首先 在c++中,很多人会说有STL库,调用一个stack不就行了吗?...
关于这个....好吧,你随意....
但是,用数组模拟栈,更加灵活...
请记住各有各的好处....
开向主题,今天就来介绍一下手动栈....
请看模板.........
1 #include<cstdio> 2 3 using namespace std; 4 5 int stack[12345],size;//用数组模拟栈,优点:手写栈比stl中的栈更加灵活 6 7 void push(int x)//此函数模拟栈中的入栈过程 8 { 9 size++;//size记录栈中的元素,size++表示新入栈的元素在数组中的位置 10 stack[size] = x;//将x进入栈 11 } 12 13 void pop()//此函数模拟栈中的出栈过程 14 { 15 size--;//只需要将size--,然后顶部的元素(数组中下标原来为size的元素)等同于被删掉 16 } 17 18 int top()//此函数模拟栈中的访问栈顶元素 19 { 20 return stack[size];//size为栈的大小,stack[size]即为栈顶元素,直接返回即可 21 } //注意push、pop都没有返回值,只有top有返回值
其实很简单....但是批注好像有点唠叨...请见谅....