码迷,mamicode.com
首页 >  
搜索关键字:进栈 出栈    ( 1830个结果
C++技术问题总结-第13篇 调用约定有哪些,有什么不同
调用约定(Calling convention),决定以下内容: a. 函数参数的压栈顺序。 b. 由调用者还是被调用者把参数弹出栈。 c. 以及产生函数修饰名的方法。   常用的调用约定为__stdcall、__cdecl、__fastcall。 1) __stdcall。 StandardCall的缩写,约定内容: a. 参数从右向左压入堆栈。 b. 函数被调用者修改堆栈。...
分类:编程语言   时间:2014-12-12 13:24:06    阅读次数:188
POJ1363 Rails【stack】【栈】
题目大意:如上图所示,已知火车要从A入站,然后从C出站。火车进站的 顺序为1~N,现在给你出站的顺序。问:能不能通过站台改变火车出站顺序 来实现按所给顺序出站。 思路:把站台看做是一个栈,按1~N的顺序遍历火车原先顺序,先入栈,如 果栈顶的火车编号和所给出站顺序将要出站的编号一样。那么火车就出栈, 直到栈里边所有满足出站顺序的火车都出站,否则就一直入栈。最后判断所 有火车是否都出站了。若都出站,输出Yes,否则输出No。...
分类:其他好文   时间:2014-12-09 19:39:05    阅读次数:212
C++算法之 两个队列实现一个栈
题目:用两个队列实现一个栈 算法思路: 现有两个队列q1与q2,入栈:如果q1与q2都为空,那么我们选择q1入栈也就是入队列,比如q1入栈 1 2 3 4 ;现在要出栈,后进先出那么4要出栈。但是q1是一个 队列,先进先出,那么 1 2 3出队列 q2 1 2 3 入队列,q1中此时剩余4,把4出对列达到出栈的效果。  这个时候如果我们又加入一个元素5,那么我们应该把5放到 q1还是q2,...
分类:编程语言   时间:2014-12-09 12:23:45    阅读次数:221
C++算法之 用两个栈实现一个队列
算法思路: 一个栈用来入队列,一个栈用来出队列: 现有两个栈s1 和s2;s1用来入栈,比如  队列进入  1 2 3 4 5 那么s1进栈 1 2 3 4 5 ,现在要出队列,意思就是要1先出来; 那么我们把栈s1的数据取出来都压到栈s2当中,那么栈s2就是 5 4 3 2 1 ;s2再出栈,此时1出栈就模拟出出队列的效果;   编写代码: // QueueFrom2Stack.cp...
分类:编程语言   时间:2014-12-08 19:40:39    阅读次数:215
C++中栈的出栈,入栈规则:A,B,C,D,E
考题: 栈底至栈顶一次存放元素 ABCD 在第五个元素E入栈之前 栈中元素可以出栈,则出栈序列可能是_____a d___________. a. ABCED b. DBCEA c. CDABE d. DCBEA分析:1.假定进栈序列是从小到大排练的(即A<B<C<D<E),则出栈序列中不可能有.....
分类:编程语言   时间:2014-12-06 21:30:45    阅读次数:233
(001)顺序栈的C++实现
(001)顺序栈的C++实现                                                            2014/12/4     jxlijunhao 这里通过C++模板类来实现一个顺序栈:  1)初始化  2)入栈  3)出栈  4)取栈顶元素 定义一个头文件 #ifndef SQ_STACK_H #define SQ_STA...
分类:编程语言   时间:2014-12-04 23:17:53    阅读次数:385
careercup-栈与队列 3.6
3.6 编写程序,按升序对栈进行排序(即最大元素位于栈顶)。最多只能使用一个额外的栈存放临时数据,但不得将元素复制到别的数据结构中(如数组)。该栈支持如下操作:push、pop、peek和isEmpty。解答使用一个附加的栈来模拟插入排序。将原栈中的数据依次出栈与附加栈中的栈顶元素比较, 如果附加栈...
分类:其他好文   时间:2014-12-04 21:27:28    阅读次数:185
careercup-栈与队列 3.5
3.5 实现一个MyQueue类,该类用两个栈来实现一个队列。解答队列是先进先出的数据结构(FIFO),栈是先进后出的数据结构(FILO), 用两个栈来实现队列的最简单方式是:进入队列则往第一个栈压栈, 出队列如果第二个栈不为空,则直接从第二个栈出队列,否则将第一个栈的数据依次压入第二个栈,然后出栈...
分类:其他好文   时间:2014-12-04 21:25:24    阅读次数:168
careercup-栈与队列 3.1
3.1 描述如何只用一个数组来实现三个栈。解答我们可以很容易地用一个数组来实现一个栈,压栈就往数组里插入值,栈顶指针加1; 出栈就直接将栈顶指针减1;取栈顶值就把栈顶指针指向的单元的值返回; 判断是否为空就直接看栈顶指针是否为-1。如果要在一个数组里实现3个栈,可以将该数组分为3个部分。如果我们并不...
分类:其他好文   时间:2014-12-04 11:51:01    阅读次数:153
Java之内联函数
以前用过C++,知道它里面有一个内联函数这个概念,一般情况用inline关键字修饰,在C++定义类时,那种写中Class定义里面的函数,也被编译器当做内联函数处理。           说了这么多,还没说什么是内联函数。所谓内联函数就是指函数在被调用的地方直接展开,编译器在调用时不用像一般函数那样,参数压栈,返回时参数出栈以及资源释放等,这样提高了程序执行速度。           现在该...
分类:编程语言   时间:2014-12-02 16:38:11    阅读次数:229
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!