http://blog.csdn.net/rongdeguoqian/article/details/8035080
堆栈是一种先进后出的数据存放的格式。具体的操作见程序:
- #include<stdio.h>
- #include<malloc.h>
- #include<stdlib.h>
- typedef struct St
- {
- int data;
- struct St *pNext;
- }NODE,*PNODE;
- typedef struct stack
- {
- PNODE pTop;
- PNODE pBottom;
- }Stack;
- void creat_Stack(Stack* s);//创建堆栈
- void push_Stack(Stack* s);//压栈
- void traverse_Stack(Stack* s);//遍历输出
- void push_Pop(Stack* s);//出栈
- int main()
- {
- Stack s;
- creat_Stack( &s);
- push_Stack(&s);
- push_Stack(&s);
- push_Stack(&s);
- traverse_Stack(&s);
- push_Pop( &s);
- traverse_Stack(&s);
- return 0;
- }
- void creat_Stack(Stack* s)
- {
- PNODE pNew = (PNODE)malloc(sizeof(NODE));
- s->pBottom = s->pTop = pNew;
- pNew->pNext = NULL;
- }
- void push_Stack(Stack* s)
- {
- int val= 0;
- PNODE pNew = (PNODE)malloc(sizeof(NODE));
- pNew->pNext = s->pTop;
- s->pTop = pNew;
- printf("请输入入栈的值\n");
- scanf("%d",&val);
- pNew->data = val;
- }
- void traverse_Stack(Stack* s)
- {
- if(s->pTop == s->pBottom)
- printf("空栈\n");
- PNODE p = s->pTop;
- while(p != s->pBottom)
- {
- printf("%d",p->data);
- p = p->pNext;
- }
- printf("\n");
- }
- void push_Pop(Stack* s)
- {
- while(s->pTop!= s->pBottom)
- {
- PNODE p = s->pTop;
- s->pTop = p->pNext;
- free(p);
- }
- }
程序执行的结果是:
http://blog.csdn.net/rongdeguoqian/article/details/8035080相关推荐
- https://blog.csdn.net/blmoistawinde/article/details/84329103
背景 很多场景需要考虑数据分布的相似度/距离:比如确定一个正态分布是否能够很好的描述一个群体的身高(正态分布生成的样本分布应当与实际的抽样分布接近),或者一个分类算法是否能够很好地区分样本的特 ...
- numpy的shape用法(转http://blog.csdn.net/by_study/article/details/67633593)
https://www.bbsmax.com/A/1O5E78b7z7/ https://www.cnblogs.com/lindaxin/p/8074921.html http://blog.csd ...
- 系统权限管理设计 (转:http://blog.csdn.net/chexlong/article/details/37697555)
权限设计(转:http://blog.csdn.net/chexlong/article/details/37697555) 1. 前言: 权限管理往往是一个极其复杂的问题,但也可 ...
- http://blog.csdn.net/u011001723/article/details/456210272222
http://blog.csdn.net/u011001723/article/details/45621027
- http://blog.csdn.net/xingfuzhijianxia/article/details/6433918
http://blog.csdn.net/xingfuzhijianxia/article/details/6433918
- http://blog.csdn.net/luoshengyang/article/details/6651971
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6651971 在Android系统中,提供了独特 ...
- http://blog.csdn.net/lovejavaydj/article/details/6
2019独角兽企业重金招聘Python工程师标准>>> http://blog.csdn.net/lovejavaydj/article/details/6202610 转载于:ht ...
- http://blog.csdn.net/churximi/article/details/61210129
http://blog.csdn.net/churximi/article/details/61210129http://blog.csdn.net/churximi/article/details/ ...
- http://blog.csdn.net/java2000_wl/article/details/8627874
http://blog.csdn.net/java2000_wl/article/details/8627874
最新文章
- python使用matplotlib可视化堆叠的直方图(stacked histogram plot)、多个类别的数据在直方图区间层面累积堆叠起来
- IBM的“认知计算时代”
- 大型网站技术架构 读书笔记
- Springboot 整合mybatis,实现多数据读写分离分库分表
- angular.forEach()
- 我对安卓recovery的流程大致总结
- java api存在问题改进措施_Sonar常见问题解决方案
- vue 解决跨域问题404问题
- 手机浏览器怎么下载视频,第三方手机浏览器下载视频的方法
- Android - 一种相似图片搜索算法的实现
- Unit 1: Packet Sniffing 1.1 Packet Sniffing Introduction to Packet Sniffing
- Python绘制节点是饼状图的社交网络图(Plot network with pie chart)
- Android Studio 基础 之 获取蓝牙Bluetooth 的状态,设置的蓝牙Bluetooth 的开关状态,并监听蓝牙Bluetooth 的状态变化方法整理
- iOS 按钮、Cell暴力点击触发多次响应的问题研究
- 鼻炎的自我疗法【实用总结】
- 推荐5个堪称神器的学习网站,在家你值得拥有
- 谷歌账户剩余余额如何退回。
- 请问转换音乐格式的软件有哪些
- 红米 12C earth 秒解锁 跳过168小时 红米note12 note12pro note12pro+系列机型解锁bl root教程步骤Fastboot
- otis电梯服务器tt使用说明_奥的斯电梯服务器使用说明
热门文章
- Tokyo Tyrant基本规范(1)--介绍和安装
- 常用SHELL软件命令
- JavaSE基础笔记十二
- Learning to Rank入门小结 + 漫谈
- Linux CentOS 7 安装 JAVA(jdk-8u181-linux-x64)
- 三台云服务器搭建hadoop集群
- 奔跑吧火柴人c语言开发_小学数学智力题:这两个火柴棍趣味题,你能做出来吗?...
- BUAA_OO_Unit1总结
- flock SUSE/RHEL
- Release编译模式下,事件是否会引起内存泄漏问题初步研究