C语言数据结构中的栈该怎么理解
发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,这期内容当中小编将会给大家带来有关C语言数据结构中的栈该怎么理解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。栈的链式实现主要内容(1) 栈包含7个元素,依次是67
千家信息网最后更新 2025年11月12日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安全错误
数据库的锁怎样保障安全
db2 查看数据库实例名
想要加密数据库
什么是海迅数据库
电竞成了网络安全
健身房数据库设计
asmr软件开发版
怎么做快餐店数据库
网络安全专业实习工资多少钱
我的世界网易手机版服务器管理
东莞oa软件开发公司
门诊系统数据库
支付网络安全龙头股
天津高科技互联网企业
q币网络安全吗
路由器改打印机服务器怎么打印
四川服务器托管云服务器虚拟主机
数据库不通
网络安全 举报人
网络安全复盘
北京中科智慧网络安全有限公司
sysdba怎么连接数据库
网络安全设备维护协议
牛博士数据库
东莞oa软件开发公司
服务器6年了有安全隐患吗
广州深圳坐标软件开发
数据库集群 优点
数据库支持度与可信度的计算
中无线网络技术
软件开发公司注册