头文件<stack> 1. stack<int>s 建立一个栈,其内部元素类型是int 2. s.push(a) 将元素a压进栈s 3. s.pop() 将s的栈顶元素弹出 4. s.top() 查询s的栈顶元素 5. s.size() 查询s的元素个数 6. s.empty() 查询s是否为空 更 ...
分类:
其他好文 时间:
2021-07-29 16:21:03
阅读次数:
0
看见一句话,感觉很好,记录一下:贵有恒,何须三更醒五更眠。最无益,莫过一日曝十日寒。 谈到中序遍历,常规的思路一个是递归,一个是迭代,其中迭代的思想需要显式的维护一个栈,以此来辅助遍历,但这连两种方法都不能达到O1的空间复杂度。刷题的时候看到一个巧妙的方法,利用二叉树中的闲散指针,每个节点访问两次, ...
分类:
其他好文 时间:
2021-07-05 16:53:36
阅读次数:
0
url的hash和HTML5的history URL的hash URL的hash也就是锚点(#), 本质上是改变window.location的href属性. 我们可以通过直接赋值location.hash来改变href, 但是页面不发生刷新 history H5的history接口是HTML5新增 ...
分类:
Web程序 时间:
2021-06-21 20:05:45
阅读次数:
0
多线程 进程:一个启动的应用程序(进程A与进程B的内存独立不共享) 线程:一个进程的执行场景/单元(线程A与线程B的内存可能共享,也可能独立) 例如在Java语言中,堆内存和方法区内存共享(因为其内存空间是固定的);但占栈内存独立,一个线程一个栈,每个栈之间互不干扰,即每个线程之间互不干扰,此即为多 ...
分类:
编程语言 时间:
2021-05-23 23:47:11
阅读次数:
0
这个表显示的是栈外的运算符与栈内运算符之间对比的优先级表。我们可以将上面的表达式入队,然后进行压栈和出栈操作,来得出后序表达式。在表达式后面加一个“#”运算符,那么表达式就是(A+B)*C+E/D#,入队后就是#D/E+C*)B+A(,“#”为队尾元素,”(“为队头元素。设置一个栈,栈顶元素为”#” ...
分类:
Web程序 时间:
2021-04-12 12:35:25
阅读次数:
0
1. 聊一聊什么是调用栈 比较官方的术语是: 调用栈是解释器(比如浏览器中的 JavaScript 解释器)追踪函数执行流的一种机制。 白话文解释一下, 无论何种语言, 在程序调用的过程中总会从一个方法调用到另外一个方法中,这种调用关系的执行在内存中会有一个栈的先进后出的过程。 最初是一个空栈,最终 ...
分类:
编程语言 时间:
2021-04-12 11:39:10
阅读次数:
0
第一章 栈与队列 **关键词:**滑动窗口 1-1 设计getMin功能的栈 思路:保存每次栈更新时的最小值,可以通过定义另外一个栈实现。 1-2 由两个栈组成的队列 思路: 队列是先进先出,栈是先进后出。入队列的时候将元素放入栈1,出队列时,如果栈2为空,将栈1的元素全部弹出压入栈2,这样栈2的弹 ...
分类:
其他好文 时间:
2021-03-01 13:51:59
阅读次数:
0
执行引擎的输入是字节码的二进制流,输出是执行结果。 8.1 运行时栈帧结构 栈帧,方法执行时存储必要信息的数据结构。存在于虚拟机栈,每一个栈帧包含了局部变量表、操作数栈、动态连接、方法返回地址和附加信息。 8.1.1 局部变量表 存放方法参数和方法内部定义的局部变量。具体大小在class文件,方法表 ...
分类:
其他好文 时间:
2021-02-18 12:56:40
阅读次数:
0
承蒙前来宣讲前辈们的指引和各种震天响的牛逼,决定接下来一段时间把CTF一搞起。 然后百度了下各个方向,打算直接搞pwn(听说搞过ACM的上手会快一点?),环境弄好后开始上手,研究一下pwn要怎么搞。 First step 栈溢出原理从入门到放弃 参考资料:www.blog.csdn.net/DRon ...
分类:
其他好文 时间:
2021-02-15 12:13:37
阅读次数:
0
实现一个栈,栈初始为空,支持四种操作: (1) “push x” – 向栈顶插入一个数x; (2) “pop” – 从栈顶弹出一个数; (3) “empty” – 判断栈是否为空; (4) “query” – 查询栈顶元素。 现在要对栈进行M个操作,其中的每个操作3和操作4都要 #include<b ...