4. 归并排序 4.1 递归实现 函数的递归本质上是一个压栈出栈的过程,更广意义上来说,函数调用都是压栈和出栈的过程,排序这一系列完了 ,我打算写一下函数调用和栈的关系的一章,看看能不能把这个过程理解透彻一些。 具体来说归并排序的递归实现。其主要思想是把待排序序列分为大小基本相同的两个部分,分别对前 ...
分类:
编程语言 时间:
2018-02-04 22:54:13
阅读次数:
355
1. 栈和队列的基本性质 (1)数组结构实现容易; (2)用链表结构较为复杂,因为牵扯很多的指针操作; 1.1 栈结构的基本操作 (1)pop操作;(弹出) (2)top或peek操作; (3)push操作;(压栈) (4)size操作; 1.2 队列的基本操作 (1)队列的基本操作与栈操作不同的是 ...
分类:
编程语言 时间:
2018-02-03 13:15:37
阅读次数:
167
1.栈内存:栈内存主要是用来运行函数的,在函数中定义的所有变量,都会在这个内存开辟空间。 在栈内存中定义的变量,不初始化,是不能直接使用的。 注意:所有的函数都必须在栈内存中运行。 而jvm只会运行处于栈内存顶部的函数。 函数被加载到栈内存的动作,称为函数的压栈(入栈)。 函数执行完之后就会从栈中消 ...
分类:
其他好文 时间:
2018-02-02 18:34:16
阅读次数:
131
pushf 和 popf pushf 的功能是将标志寄存器的值压栈,而 popf 是从栈中探出数据,输入标志寄存器。 pushf 和 popf,为直接访问寄存器提供了方法。 格式 这两条指令后面都不加东西,默认的操作对象是:所有的标志寄存器。 标志寄存器在 Debug 中的表示 在寄存器中,标志局存 ...
分类:
编程语言 时间:
2018-01-25 00:26:52
阅读次数:
346
21.栈的压入、弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这 ...
分类:
其他好文 时间:
2018-01-19 23:25:38
阅读次数:
194
package jianzhiOffer;
import java.util.Stack;
/**
* 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列
* 是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,
* 3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对
分类:
其他好文 时间:
2018-01-19 22:22:33
阅读次数:
174
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是 ...
分类:
其他好文 时间:
2017-12-25 11:41:53
阅读次数:
145
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是 ...
分类:
其他好文 时间:
2017-12-06 23:53:10
阅读次数:
259
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是 ...
分类:
其他好文 时间:
2017-11-28 01:42:31
阅读次数:
174
inline函数的作用继承了宏定义的优点,没有了参数压栈,代码生成等一部分操作,并且摒弃了没有检查编译规则的缺点; 另外要注意,内联函数一般只会用在函数内容非常简单的时候,这是因为,内联函数的代码会在任何调用它的地方展开,如果函数太复杂,代码膨胀带来的恶果很可能会大于效率的提高带来的益处。内联函数最 ...
分类:
其他好文 时间:
2017-11-25 20:06:27
阅读次数:
175