中缀表达式的计算 利用两个栈来实现,操作数栈,操作符栈 只支持个位数运算 最后必须输入一个'#' ...
分类:
其他好文 时间:
2016-09-29 01:35:05
阅读次数:
90
数组方法: 模拟队列的操作:push()/shift();unshift()/pop();模拟栈操作:push()/pop(); push()返回增加后的长度、unshift也是。pop和shift返回项值。concat()在已有的数组基础上返回一个数组,即是传入的是数组,它也会将数组变成单一的参数 ...
分类:
Web程序 时间:
2016-09-21 12:51:23
阅读次数:
183
判断括号的顺序是否正确; 思路:用一个堆栈来存储符号序列,按照符号匹配规则进行堆栈操作; 前括号一律入栈,后括号如果跟栈顶符号匹配,栈顶符号出栈如果,若不匹配则返回false; 最后栈为空返回true,否则返回false; 代码如下: ...
分类:
其他好文 时间:
2016-09-04 11:43:07
阅读次数:
132
给定一个初始为空的栈,和n个操作组成的操作序列,每个操作只可能是出栈或入栈要求在操作序列的执行过程中不会出现非法操作,即不会再空栈时执行出栈操作,同时保证当操作序列完成是栈恰好为空求符合条件的序列个数1<=n<=1000思路:利用栈层次顺序建一棵二叉树,二叉树的..
分类:
其他好文 时间:
2016-08-28 16:37:12
阅读次数:
144
我们先引入关于"矩阵堆栈"的官方说法: OpenGL的矩阵堆栈指的就是内存中专门用来存放矩阵数据的某块特殊区域。实际上,在创建、装入、相乘模型变换和投影变换矩阵时,都已用到堆栈操作。一般说来,矩阵堆栈常用于构造具有继承性的模型,即由一些简单目标构成的复杂模型。例如,一辆自行车就是由两个轮子、一个三角 ...
分类:
其他好文 时间:
2016-08-23 11:31:31
阅读次数:
274
Java虚拟机的内存区域中,程序计数器、虚拟机栈和本地方法栈三个区域是线程私有的,随线程生而生,随线程灭而灭;栈中的栈帧随着方法的进入和退出而进行入栈和出栈操作,每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这三个区域的内存分配和回收都具有确定性。垃圾回收重点关注的是堆和方法区部分的 ...
分类:
编程语言 时间:
2016-08-14 07:37:24
阅读次数:
202
题目链接:hdu_5818_Joint Stacks 题意: 给你两个栈,多了个合并操作,然后让你模拟 题解: 很容易想到O(1)的单个栈操作,O(n)的合并操作,这样肯定超时,所以我们要将时间复杂度均摊一下,让每个操作都是logn的,于是用上了线段树模拟。 不过官方题解给的是O(n)的解法,反正我 ...
分类:
其他好文 时间:
2016-08-10 12:20:07
阅读次数:
237
1.类和对象的区别 类是对象的抽象,对象是类的具体实例。 类是抽象的,不占用内存,而对象是具体的,占有内存空间。 例如:类就是水果,对象就是苹果。 2.SSL握手流程 3.堆和栈的区别 一、堆栈空间分配区别: 1、栈(操作系统):由操作系统自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式 ...
分类:
移动开发 时间:
2016-08-06 12:43:55
阅读次数:
398
中缀表达式转后缀表达式的方法:1.遇到操作数:直接输出(添加到后缀表达式中)2.栈为空时,遇到运算符,直接入栈3.遇到左括号:将其入栈4.遇到右括号:执行出栈操作,并将出栈的元素输出,直到弹出栈的是左括号,左括号不输出。5.遇到其他运算符:加减乘除:弹出所有优先级大于或者等于该运算符的栈顶元素,然后 ...
分类:
其他好文 时间:
2016-07-09 12:01:07
阅读次数:
169
之前在《C/C++和Lua是如何进行通信的?》一文中简单的介绍了lua与宿主之间的通信。简单的说两种不同的语言之间数据类型不一样又如何进行数据交换呢?那就是lua_State虚拟栈,通过栈操作和lua库函数,我们很轻松就能完成两者之间的数据交换。 开始之前,明确几个问题,lua中的虚拟栈的索引编号问 ...
分类:
编程语言 时间:
2016-06-28 12:34:47
阅读次数:
268