数据结构——16 栈数组描述

来源:互联网 发布:gif缩小软件 编辑:程序博客网 时间:2024/06/10 21:18

栈——数组描述


栈——进栈、出栈、打印(数组描述)


#include<iostream>using namespace std;class Stack{public:Stack(int initialCapacity)           //构造函数{size=initialCapacity;stack= new int[size];top=-1;}void push(int element);              //进栈int pop()     //出栈    直接返回出栈的元素{if(top==-1){cout<<"栈已经为空!"<<endl;exit(0);}return stack[top--];} int top;     //当前栈顶int size;        //栈的容量int* stack;                          //元素数组};void Stack::push(int element)            //动态增加栈的大小{if(top==size-1)                      {size*=2;int* p=new int[size];for(int i=0;i<=top;i++)p[i]=stack[i];delete[] stack;stack=p;}stack[++top]=element;}int main(){Stack stack(10);                     //初始化能装10个元素的栈for(int i=0;i<18;i++)                //超过10个元素进栈,会动态增加栈的大小stack.push(i);for( i=0;i<10;i++)                   //出栈cout<<stack.pop()<<endl;return 0;}


0 0
原创粉丝点击