编写一个程序,实现链栈的各种基本运算
来源:互联网 发布:java设计模式之禅 pdf 编辑:程序博客网 时间:2024/04/20 14:17
完成如下功能:
(1)初始化链栈s;
(2)判断链栈s是否非空;
(3)依次进链栈元素a,b,c,d,e;
(4)判断链栈s是否非空;
(5)输出链栈长度;
(6)输出从栈顶到栈底元素;
(7)输出出链栈序列;
(8)判断链栈s是否非空;
(9)释放链栈;
代码:
#include"iostream"#include"malloc.h"using namespace std;typedef struct linknode{char data;struct linknode * next;}LiStack;void InitStack(LiStack *& s){s=(LiStack *)malloc(sizeof(LiStack));s->next=NULL;}bool StackEmpty(LiStack *s){return(s->next==NULL);}void Push(LiStack *& s,char e){LiStack *p;p=(LiStack *)malloc(sizeof(LiStack));p->data=e;p->next=s->next;s->next=p;}int StackLength(LiStack *s){LiStack * p=s;int i=0;while(p->next!=NULL){i++;p=p->next;}return(i);}void Get(LiStack *s){LiStack * p;p=(LiStack *)malloc(sizeof(LiStack));p=s->next;while(p->next!=NULL){cout << p->data << " " ;p=p->next;}cout << p->data << endl;}void Pop(LiStack *s){LiStack * p;p=(LiStack *)malloc(sizeof(LiStack));p=s->next;while(p->next!=NULL){cout << p->data << " " ;p=p->next;}cout << p->data << endl;}void DestoryStack(LiStack *&s){LiStack * p=s,* q=s->next;while(q!=NULL){free(p);p=q;q=p->next;}free(p);}void main(){LiStack *s;InitStack(s);cout << StackEmpty(s) << endl;Push(s,'a');Push(s,'b');Push(s,'c');Push(s,'d');Push(s,'e');cout << StackEmpty(s) << endl;cout << StackLength(s) << endl;Get(s);Pop(s);cout << StackEmpty(s) << endl;DestoryStack(s);}
- 编写一个程序,实现链栈的各种基本运算
- 编写一个程序,实现顺序栈的各种基本运算。
- 编写一个程序,实现链队的各种基本运算
- 编写一个程序,实现顺序表的各种基本运算
- 编写一个程序,实现单链表的各种基本运算
- 编写一个程序实现链串的各项基本运算
- 编写一个程序,实现顺序环形队列的各种基本运算。
- 编写一个程序,实现二叉树的各种运算
- 编写一个程序实现单链表的各种基本运算(假设顺序表的元数基本类型为Char)
- 编写一个程序实现顺序栈的各种基本运算(假设顺序表的元数基本类型为Char)
- 编写一个程序实现链式栈的各种基本运算(假设顺序表的元数基本类型为Char)
- 编写一个程序实现顺序串的各项基本运算
- 编写一个程序实现顺序表的各种基本运算(假设顺序表的元数基本类型为Char)
- 编写一个程序实现循环双链表的各种基本运算(假设顺序表的元数基本类型为Char)
- 实验题7.1: 编写一个程序algo7-1.cpp,实现二叉树的各种基本运算,并在此基础上设计一个程序Main.cpp完成如下功能(b为如下图所示的一棵二叉树)
- 实现链栈各种基本运算的算法
- 实现链栈各种基本运算
- 编写一个程序实现模式串的各种模式匹配
- Struts 2读书笔记-----Action访问Servlet API
- Invoke与BeginInvoke
- rqnoj-342-最不听话的机器人-dp
- 比特币疯了
- C#调用opencv
- 编写一个程序,实现链栈的各种基本运算
- 32位与64位操作系统的区别
- struts2中的action访问web对象
- 工作总结之-----WebService计时器如何叫醒
- Android之ContentProvider详解
- Linux常见命令(rm,mv)
- 推荐20个优秀的网页色彩搭配实例
- ffmpeg 用 h264库进行编码的编译配置
- 问题 No architectures to compile for (ARCHS=, VALID_ARCHS=armv7 armv7s).