链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
来源:互联网 发布:java 异步写日志 编辑:程序博客网 时间:2024/04/30 15:01
#include<iostream>using namespace std;typedef struct node{int data;struct node *next;}Node, *Stack;void initiateStack(Stack &s){s = new Node;s->next = NULL;}bool isEmptyStack(Stack &s){if(NULL == s){cout << "栈不存在." << endl;exit(0);}if(NULL == s->next)return true;return false;}void push(Stack &s, int element){Node *p = new Node;p->data = element;p->next = s->next;s->next = p;}int pop(Stack &s){if(isEmptyStack(s)){exit(1);}Node *p = s->next;s->next = p->next;int element = p->data;delete p;return element;}int getLength(Stack &s){Node *p = s;int length = 0;while(NULL != p->next){p = p->next;length++;}return length;}int getTop(Stack &s){if(isEmptyStack(s))exit(1);return s->next->data;}void clearStack(Stack &s){while(!isEmptyStack(s))pop(s);}void destoryStack(Stack &s){while(!isEmptyStack(s))pop(s);delete s;s = NULL;}void print(bool b){if(b)cout << "yes" << endl;elsecout << "no" << endl;}int main(){Stack s;initiateStack(s);int n = 100;int r = 8; // r进制while(n) // 范式{push(s, n % r);n /= r;}while(!isEmptyStack(s))cout << pop(s);cout << endl << getLength(s) << endl;int i;for(i = 1; i <= 10; i++)push(s, i);cout << getTop(s) << endl;print(isEmptyStack(s));clearStack(s);print(isEmptyStack(s));destoryStack(s);print(isEmptyStack(s));return 0;}
- 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
- 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
- 链式栈的初始化,判空,进栈,出栈,求长,求顶,打印,清空和销毁
- 顺序栈的初始化,进栈、出栈、求长、判空、访顶、遍历、清空、销毁
- 链队列的建立、判空、入队、出队、求长、访头、清空和销毁
- 链队列的建立、判空、入队、出队、求长、访头、清空和销毁
- 链队列的建立、判空、入队、出队、求长、访头、清空和销毁
- 链栈初始化、进栈、出栈、判空、遍历、求长、求顶、清栈、毁栈
- [数据结构]c语言实现链栈的入栈,出栈,清空,销毁等操作
- [数据结构]c语言实现顺序栈的入栈,出栈,清空,销毁等操作
- 【学习点滴-数据结构-栈&队列】 顺序栈的建立,入栈,出栈,判空
- C++ 栈的 基本操作 入栈 出栈 判空 求长度
- C++ 栈的 基本操作 入栈 出栈 判空 求长度(方法二)
- 链队列和循环队列的表示与实现-初始化、判空、求长、入队、出队、遍历、求头、求尾、清队、毁队
- 栈的出栈、入栈、遍历、清空操作
- 栈的基本实现(入栈,出栈,清空,判断是否为空)
- 栈的创建 以及基本操作出栈 入栈,判空
- 链式堆栈的初始化、出栈、入栈、取栈顶元素、判空
- android 静默安装 后台安装
- 上传照片并保存在数据库中
- cocos2d-x 开发中使用的一些工具
- poj 2251
- 《疯狂的程序员》七
- 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
- 无序数组A和B,线性时间复杂度,空间复杂度O(1) ,求中位数
- Java基本数据类型总结
- Linux2.6 内核的 Initrd 机制解析
- 关于THIS_FILE
- 四大基本逻辑体系
- Android ListView使用Holder优化原理
- JBPM4项目和tomcat6.0的兼容问题
- Java读写锁