C语言数据结构中的栈该怎么理解
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,这期内容当中小编将会给大家带来有关C语言数据结构中的栈该怎么理解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。栈的链式实现主要内容(1) 栈包含7个元素,依次是67
千家信息网最后更新 2025年02月07日C语言数据结构中的栈该怎么理解
这期内容当中小编将会给大家带来有关C语言数据结构中的栈该怎么理解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
栈的链式实现
主要内容
(1) 栈包含7个元素,依次是67,3,88,6,1,7,0,采用尾插入法创建 栈,为该栈设置两个指针,一个bottom和一个top指针;
(2) 入栈函数push,该函数完成向栈中插入元素的功能,利用push函数,将数字-9插入到栈内,并将栈里的元素遍历;
(3) 出栈函数pop,该函数完成从栈中删除元素的功能,利用pop函数,删除此时栈里面的3个元素,并遍历栈;
(4) 函数length,求出此时栈内元素的个数。
代码实现:
#include#include struct node{ int date; struct node *next;};struct stack{ struct node *bottom; struct node *top;}s;struct stack *creat(struct stack *s); //创建栈void push(struct stack *s,int e); //入栈void print(struct stack *s); //打印输出void pop(struct stack *s); //出栈void length(struct stack *s); //输出栈的长度int main(){ struct stack *s; int e; s=creat(s); push(s,67); push(s,3); push(s,88); push(s,6); push(s,1); push(s,7); push(s,0); printf("初始栈元素为:"); print(s); printf("\n"); printf("\n"); push(s,-9); printf("插入元素后:"); print(s); printf("\n"); printf("\n"); pop(s); pop(s); pop(s); printf("删除元素后:"); print(s); printf("\n"); printf("\n"); length(s); return 0;}struct stack *creat(struct stack *s){ s=(struct stack *)malloc(sizeof(struct stack )); s->bottom=s->top=(struct node *)malloc(sizeof(struct node)); s->top->next=NULL; s->bottom->next=NULL; return s;}void push(struct stack *s,int e)//进栈{ struct node *p; p=(struct node *)malloc(sizeof(struct node)); p->date=e; p->next=NULL; s->top->next=p; s->top=p;}void pop(struct stack *s)// 出栈{ struct node *p,*q; p=s->bottom; while(p->next!=NULL) { q=p; p=p->next; } q->next=NULL; s->top=q;}void print(struct stack *s)//打印输出{ struct node *p = s->bottom->next; while(p!=NULL) { printf("%4d",p->date); p=p->next; }}void length(struct stack *s)//计算长度{ struct node *p=s->bottom->next; int i=0; while(p!=NULL) { i++; p=p->next; } printf("此时栈的长度为:%4d",i);}
上述就是小编为大家分享的C语言数据结构中的栈该怎么理解了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
元素
函数
内容
长度
输出
数据
数据结构
结构
语言
功能
指针
分析
专业
两个
个数
中小
代码
内容丰富
就是
数字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
邯郸地类数据库
gis数据库空间查询
浏览器更改代理服务器后打不开
滴滴出行软件开发公司
数据库技术对教育的影响
数据库多表关系英语
软件开发工商
社区网络安全周宣传活动
数据流数据库
有asm的数据库如何关闭
大屏机为什么总说服务器繁忙
诛仙3老连接不上服务器
数据库中每一列的表头称为
万企互联网络技术有限公司
中南大学数据库技术与应用慕课
实现数据库系统安全性
学生对网络安全的建议
红警在哪里查服务器
drop数据库中
微微一笑很倾城游戏里的服务器
计算机网络技术学出来好吗
DB2数据库排序命令
预编译 数据库
中银国际证券软件开发
软件开发属于工业还是商业
自己写一个内存数据库
嘉兴赫米网络技术
算薪资的软件开发用哪些技术
软件测试与软件开发的关系是并行
连接内部数据库wid