顺序栈的实现
#include <stdio.h> #include <stdlib.h> #define MaxSize 50 //顺序栈 typedef struct{ int data[MaxSize]; int top; }Stack; //初始化 bool InitStack(Stack &S){ S.top=-1; return true; } //进栈 bool Push(Stack &S,int x){ if(S.top==MaxSize-1) return false; S.data[++S.top]=x; return true; } //出栈 bool Pop(Stack &S,int x){ if(S.top==-1) return false; x=S.data[S.top--]; return true; } //读栈顶元素 bool GetTop(Stack S,int &x){ if(S.top==-1) return false; x=S.data[S.top]; return true; } //遍历 bool Travel(Stack S){ int i; for(i=S.top;i>-1;i--){ printf("%d",S.data[i]); } return true; } int main(){ Stack S;int x; InitStack(S); Push(S,1); Push(S,2); Push(S,8); //Travel(S); GetTop(S,x); printf("%d",x); return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)