栈
下文摘自百度百科~~栈(stack)又名堆栈,它是一种特殊的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
基本算法
1.进栈(PUSH)算法①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);③S(TOP)=X,结束(X为新进栈的元素);2.退栈(POP)算法①若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈, 空则下溢;不空则作②);②X=S(TOP),(退栈后的元素赋给X):③TOP=TOP-1,结束(栈指针减1,指向栈顶)。但是!有些人比较懒(跟我一样),那么,请使用STL大法吧!(逃STL中栈的定义:stack<int>stack1;//就是这种类型当然,如果要在STL中使用栈,要加上头文件#include<stack>!但是,,这个头文件只包括两个算法:进栈和出栈(真够少的)。。
PS:下一篇随笔介绍——数据结构之队列。
转载是允许的,但是除了博主同意的情况下,必须在文章的明显区域说明出处,否则将会追究其法律责任。