数据结构之链栈实现
来源:互联网 发布:十大网络主播评选活动 编辑:程序博客网 时间:2024/05/21 17:30
顺序栈和链栈的优缺点在我就不赘述了,她们只是存储方式的区别罢了。不过链栈的好处就是她存储数据的数量是动态变化的,只在你需要的时候增加或删除。这里需要重提的一个问题是在使用free()函数释放空间后需要将指针置空,防止野指针。
typedef struct StackNode{ int data; struct StackNode *next;}StackNode;typedef struct{ StackNode *top;//栈顶指针}LinkStack;//1.创建一个空栈int initstack(LinkStack *S){ S->top = NULL;}//2.判断是否为空栈int isempty(LinkStack *S){ if(NULL == S->top) return 0; else return -1;}//3.入栈int push(LinkStack *S,int value){ StackNode *p; p = (StackNode *)malloc(sizeof(StackNode)); if(NULL == p) { printf("over flow!\n"); return -1; } p->data = value; p->next = S->top; S->top = p; return 0;}//4.出栈int pop(LinkStack *S){ int value = 0; if(!isempty(S)) return -1; value = S->top->data; S->top = S->top->next; free(S->top); S->top = NULL;//防止野指针 return value;}
- 数据结构之链栈实现
- 数据结构之栈实现
- 数据结构实现之栈
- 数据结构之链栈 C++实现
- 简单数据结构的实现之链栈
- 数据结构学习之链栈c++实现
- 数据结构C语言实现之链栈
- 数据结构之 链栈的实现
- 【数据结构】之链栈的java实现
- 数据结构之链栈的实现
- 【数据结构】之链栈的java实现
- 数据结构之栈的链表实现
- 【数据结构】之链栈的java实现
- 数据结构之顺序栈实现
- 数据结构之栈的实现
- 动手实现 数据结构 之 “栈”
- 数据结构之栈 C++实现
- 数据结构之栈的实现
- PopupWindow的创建实例
- Attribute value ("XXX") is quoted with " which must be escaped when used within the value 异常的修正1
- XmlDataSource控件绑定asp:Repeater
- java获取当前进程ID
- 理解ThreadLocal
- 数据结构之链栈实现
- 首次霸面
- HDOJ 1009 FatMouse' Trade 贪心算法greedy so easy!
- linux 下的 wchar_t
- Android平台中MCE USB设备支持
- Redhat下VNC SERVER的配置
- 花生壳动态域名新手上路
- android 获取控件大小和设置调整控件的位置XY
- java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils 一个错误引发的血案 struts2-blank的所有 包