数据结构-3、栈、队列和数组
3.1、栈3.1.1、栈的基本概念:1、栈的定义: 栈是只允许在一端进行插入或删除操作的线性表。首先,栈是一种线性表,但限定这种线性表只能在某一端进行插入和删除操作,如下图:
栈顶(Top)。线性表允许进行插入删除的那一端。
栈底(Bottom)。固定的,不允许进行插入和删除的另一端。
空栈。不包含任何元素的空表。
假设某个栈 $S=(a_1,a_2,a_3,a_4,a_5)$,如上图所示,则 $a_1$为栈底元素,$a_5$为栈顶元素。由于栈只能在栈顶进行插入和删除操作,进栈次序依次为 $a_1,a_2,a_3,a_4,a_5$,而出栈次序则与入栈次序相反。由此可见,栈的操作特性可以明显地概括为后进先出(LIFO)。
栈的数学性质:n 个不同元素进栈,出栈元素不同排列的个数为 $\frac{1}{n+1}C^n_2n$ 。上述公式称为卡特兰数,可采用数学归纳法证明。
2、栈的基本操作: 栈的基本操作:
123456InitStack(&S) //初始化一个空栈。StackEmpty(S) //判断一个栈是否为空,若栈 S 为空则返回 t ...
hexo部署服务器
背景:笨办法: 我在经过无数次的尝试之后,发现无论我怎么操作,都存在一个问题,就是git无法成功推送到服务器,这个就很难办了,所以,个人感觉只有使用一个本办法才能操作了,如下:
首先,老办法,将我们的hexo推送到GitHub上,之后等一会儿,能看了之后再说,
然后,我们在目标服务器上运行以下代码(前提,创建一个/Temp目录):
1234567cd /Temp/blogrm -rf *rm -rf /var/www/html/*git clone https://github.com/g01den1/g01den1.github.io.gitmv ./g01den1.github.io/* /var/www/html/cd /Temp/blogrm -rf *
最后,似乎只能通过这样的本办法来进行推送了,别的办法就没了,不过可能只是因为我太菜了,所以才导致了这个的问题,之后再解决吧。
数据结构笔记-2、线性表
2.1、线性表的定义和基本操作如有侵权请联系删除。
2.1.1、线性表的定义: 线性表是具有相同数据类型的 n (n>=0) 个数据元素的有限序列,其中 n 为表长,当 n = 0 时线性表是一个空表。若用 L 命名线性表,则其一般表示为:$$L=(a_1,a_2,a_3,…,a_i,x_{i+1},…,a_n)$$式中, $a_1$ 是唯一的“第一个元素”,又称表头元素;$a_n$ 是唯一的“最后一个元素”,又称表尾元素。除第一个元素外,每个元素有且仅有一个直接前驱。除最后一个元素外,每个元素有且仅有一个直接后驱。
由此,线性表的特点是:
表中元素的个数有限。
表中元素具有逻辑上的顺序性,表中数据有其先后次序。
表中元素都是数据元素,每个元素都是单个数据。
表中元素的数据类型都相同,这意味着每个元素都占有相同大小的存储空间。
表中元素具有抽象性,即仅讨论元素间的逻辑关系,而不考虑元素究竟表示什么内容。
2.1.2、线性表的操作: 线性表的主要操作如下:
InitList(&L) :初始化表。构造一个空的线性表。
Le ...
随机二次元图api相关
爬虫获取所有图片:背景: 最近做一些Web题,发现了些网页的背景会随机出现,每一次刷新都会出现不一样的图,感觉有点意思,试着研究下,当然,肯定不是研究咋弄的这个,而是,api里的图怎么爬取:
首先: 接口文档如下:
[LoliApi]: https://docs.loliapi.com/api-shi-yong-wen-dang/sui-ji-er-ci-yuan-tu-pian “LoliApi”
之后直接上源码:
1234567891011121314151617181920212223242526272829303132333435363738import requestsimport osdef pe(): for i in range(1,3400): url = "https://img.loliapi.cn/i/pe/img{}.webp".format(str(i)) print(url) resp = requests.get(url) if resp.sta ...
【2024】LitCTF
Misc:1、涐贪恋和伱、甾―⑺dé毎兮毎秒: 题目描述:laosebi,无脑LSB隐写,全取最低位的LSB隐写,拿到flag。有大佬直接zsteg秒了,在这里提一下
2、你说得对,但__ 下载下来是一个图片,通过foremost分离图片,得到四张图片,每一张都是一个二维码的一部分,拼出来扫一下就行了,完事儿:
1LitCTF{Genshin_St@rt!!}
3、原铁,启动! 好离谱的题,不过题目的提示很明显了,我没发现,我的问题,原铁,再加上题目描述,推测应该是原神和崩铁的通用字体,直接上网站里对照这来,https://genshin.pro-ivan.com/genshinfonttranslator/demo/,最后发现前半部分是原神,后半部分是崩铁的字体:
1LitCTF{good_gamer}
4、盯帧珍珠 题目给了一张jpg图片,放到010里面发现文件头为gif格式的,修改后缀后使用工具分离得到一堆图片,在其中可以发现组成flag的部分(我的010出了问题,破解无效了,这里就不放照片了),然后是一个gif中间嵌 ...
【2023】LitCTF
LitCTF2023(复现)Web:1、我Flag呢? ctrl+u 读取源码,在最后发现了flag:
1<!--flag is here flag=NSSCTF{3d5218b9-4e24-4d61-9c15-68f8789e8c48} -->
2、PHP是世界上最好的语言!!
右边那个框下面是 RUN CODE ,结合题目是PHP,推测为RCE,先输入echo 123;看看会发生啥:发现左边输出内容出现了123,那么,直接system(“cat /flag”);成功拿到flag:
1flag=NSSCTF{b26d3851-52f5-4a80-9e69-6417baf49d68}
3、导弹迷踪 js游戏题,先看源码,这里看game.js:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 ...
JavaWeb基础(一)-IO操作
Java I/O工作机制:注:简要笔记,示例代码可能较少,甚至没有。
1、Java 的 I/O 类库的基本架构。 Java 的 I/O 操作类在包 java.io 下,大概有将近80个类,这些类大概可以分为如下四组。
基于字节操作的 I/O 接口:InputStream 和 OutputStream 。
基于字符操作的 I/O 接口:Writer 和 Reader 。
基于磁盘操作的 I/O 接口:File。
基于网络操作的 I/O 接口:Socket。
1.1、基于字节的 I/O 操作接口 基于字节的 I/O 操作接口输入和输出分别是:InputStream 和 OutputStream 。InputStream 的类层次如下:
输入流根据数据类型和操作方式又被划分为若干个子类,每个子类分别处理不同操作类型。OutputStream 的类层次结构也类似,如下图:
1.2、基于字符的 I/O 操作接口 下图是写字符的 I/O 操作接口涉及的类,Writer 类提供了 ...
三、Servlet基础
注:因为我并不完全是为了从0开始Java开发,因此,我这里先暂时跳过第二章服务器环境相关的内容,直接开始第三章的内容。
3.1、Servlet 的基本结构: 下面的代码给出了一个基本的 Servlet ,它处理 GET 请求。GET 请求是浏览器请求的常见类型,用来请求 Web 页面。用户在地址栏中输入 URL 、点击 Web 页面内的连接、或提交没有指定 METHOD 或 METHOD=”GET” 的 HTML 表单时,浏览器都会生成这个请求。 Servlet 还可以容易地处理 POST 请求(提交 METHOD=”POST” 的 HTML 表单时,会生成 POST 请求)。HTML 表单的使用细节以及 GET 和 POST 之间的区别。
123456789101112131415161718192021222324package com.firstweb.study01;import jakarta.servlet.ServletException;import jakarta.servlet.http.HttpServlet;import jakarta.s ...
一、Servlet和JSP技术概述
注:该系列笔记是用于我在 《Servlet 与 JSP 核心编程》这本书中的学习笔记,无其他意思,侵权请联系2082045221@qq.com删除。
第一章内容较少,所以暂时有用的笔记也不多。
1.1、Servlet 的功用: Servlet 是运行在 Web 服务器或应用服务器上的 Java 程序,它是一个,负责连接来自 Web 浏览器或其他 HTTP 客户程序的请求和 HTTP 服务器上的数据库或应用程序。Servlet 的工作是执行下面的任务,如图 1.1 所示:
读取客户发送的显式数据。
最终用户一般在网页的 HTML 表单中输入的这些数据。然而,数据还有可能来自于 Applet 或定制的 HTTP 客户程序。
读取由浏览器发送的隐式请求数据。
图 1.1 中显示了一条从客户端到 Web 服务器(Servlet 和 JSP 所在的层)的单箭头,但实际上从客户端传送到 Web 服务器的数据有两种,它们分别为用户 ...
BUUCTF-Misc-第一页(1-16)
Misc-BUU刷题-第一页1.签到: flag在题目描述里,直接交了。
2.金胖: 没有题目描述。
题目是一个gif文件,放到pr等软件里逐帧看就可以了,flag{he11ohongke}
3.你竟然赶我走: 附件是一个jpg文件,但是,打开啥都没有。
直接用记事本打开,翻到最底下,flag{stego_is_s0_bor1ing}
4.二维码: 图片是个二维码,这里不放出来了,扫了之后没啥内容,那么记事本看看,存在一个4number.txt的一个文件,那么,通过010editor打开图片分析,发现图片里面含有一个txt文件,还是在压缩包中。
补充知识:一个完整的 JPG 文件由 FF D8 开头,FF D9结尾在使用图片浏览器时,图片浏览器会忽略 FF D9 以后的内容,因此可以在 JPG 文件中加入其他文件。其他文件隐藏如png.gif文件隐藏也是这个道理。
直接在linux中使用foremost分离压缩包,之后成功拿到一个压缩包,打开有个4number.txt文件,但是是 ...