博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构之线性结构---栈
阅读量:5793 次
发布时间:2019-06-18

本文共 1495 字,大约阅读时间需要 4 分钟。

栈是一种比较重要的线性结构,能够解决很多困难的问题,在此写个代码小小总结一下。

这里采用的实现方式是顺序结构,链式结构有待完善。。。

上代码:

1 #include
2 using namespace std; 3 4 class stack 5 { 6 private: 7 int msize; 8 int *st; 9 int top;10 public:11 stack(int size);12 bool push(int &item);13 bool pop();14 void display();15 bool clear();16 ~stack();17 };18 19 stack::stack(int size)20 {21 msize = size;22 st = new int[msize];23 top = -1;24 }25 26 bool stack::push(int &item)27 {28 29 if(top == msize-1)30 {31 cout<< "栈已满!" << endl;32 return 0;33 }34 st[++top] = item;35 return 1;36 }37 38 bool stack::pop()39 {40 if(top == -1)41 {42 cout<< "栈已空!" << endl;43 return 0;44 }45 //item = st[top--];46 top--;47 return 1;48 }49 50 void stack::display()51 {52 int temp = top;53 while(temp != -1)54 {55 cout << st[temp] << " ";56 temp--;57 }58 59 cout<< endl;60 }61 bool stack::clear()62 {63 top = -1;64 return 1;65 }66 67 stack::~stack()68 {69 delete [] st;70 }71 72 int main()73 {74 stack st(10);75 int ele;76 cout<< "输入元素 :" << endl;77 for(int i=0;i<10;i++)78 {79 cin>>ele;80 st.push(ele);81 }82 cout<< " 所有元素出栈 :" << endl;83 st.display();84 st.pop();85 st.pop();86 cout<< "弹出两个元素之后打印 : " << endl;87 st.display();88 return 0;89 }

程序运行结果:

转载于:https://www.cnblogs.com/sjlove/archive/2013/05/22/3093780.html

你可能感兴趣的文章
Java虚拟机管理的内存运行时数据区域解释
查看>>
人人都会深度学习之Tensorflow基础快速入门
查看>>
ChPlayer播放器的使用
查看>>
js 经过修改改良的全浏览器支持的软键盘,随机排列
查看>>
Mysql读写分离
查看>>
探寻Interpolator源码,自定义插值器
查看>>
一致性哈希
查看>>
Web日志安全分析工具 v2.0发布
查看>>
统计数据库大小
查看>>
第十六章:脚本化HTTP
查看>>
EXCEL表中如何让数值变成万元或亿元
查看>>
L104
查看>>
CTOR有助于BCH石墨烯技术更上一层楼
查看>>
被遗忘的CSS
查看>>
Webpack中的sourcemap以及如何在生产和开发环境中合理的设置sourcemap的类型
查看>>
做完小程序项目、老板给我加了6k薪资~
查看>>
自制一个 elasticsearch-spring-boot-starter
查看>>
【人物志】美团前端通道主席洪磊:一位产品出身、爱焊电路板的工程师
查看>>
一份关于数据科学家应该具备的技能清单
查看>>
机器学习实战_一个完整的程序(一)
查看>>