数据结构顺序栈和链栈基本操作----c++实现
来源:互联网 发布:淘宝上怎么换货啊 编辑:程序博客网 时间:2024/06/05 19:25
顺序栈:
#include<iostream>using namespace std;#define MaxSize 50class SeqStack{private:int data[MaxSize]; int top;public: void initStack();//初始化栈 void Push(int elem);//入栈int Pop();//出栈bool isEmpty();//判断栈是否为空int getLength();//得到栈的长度void visit();//遍历栈里的数据};void SeqStack::initStack(){for(int i=0;i<MaxSize;i++)data[i]=0; top=-1;}void SeqStack::Push(int elem){if(top==MaxSize)return;top++; data[top]=elem;}int SeqStack::Pop(){ if(top==-1)return 0; int elem= data[top];top--;return elem;}bool SeqStack::isEmpty(){ if(top==-1)return true;else return false;}int SeqStack::getLength(){ return top++;}void SeqStack::visit(){ while(!isEmpty()) cout<<Pop()<<" ";}
链栈:
#include<iostream>using namespace std;struct linkStack{ char data; linkStack *next;};//链栈的初始化linkStack * initStack(){ linkStack *top=new linkStack; top=NULL; return top;}//判断链栈是否为空bool isEmpty(linkStack *stack){ if(NULL==stack) return true; return false;}//链栈入栈linkStack * push(linkStack *stack,char data){ linkStack *node=new linkStack; node->data=data; node->next=stack; stack=node; return stack; }//链栈出栈linkStack * pop(linkStack *stack){ if(stack!=NULL) { cout<<stack->data; stack=stack->next; }else cout<<"是空栈!";return stack;}//链栈的长度int getLength(linkStack *stack){int length=0; if(stack==NULL) return 0; while(stack!=NULL) { length++; stack=stack->next; } return length;}//取出栈顶元素int getTop(linkStack *stack){ int temp; temp=stack->data; return temp;}int main(){linkStack *stack=initStack();for(int i=0;i<9;i++){char c=i+96; stack=push(stack,c);}for(int j=0;j<9;j++){ stack=pop(stack);} return 0;}
- 数据结构顺序栈和链栈基本操作----c++实现
- 顺序栈的九种基本操作和实现(数据结构C语言版清华大学严蔚敏)
- 数据结构---C语言顺序栈基本操作
- 【数据结构】顺序栈的基本操作操作---C/C++
- 【数据结构】顺序栈的基本操作操作---C/C++
- 数据结构 - C语言版 - 顺序栈 所有基本操作
- 数据结构 P46-47 算法实现 顺序栈的基本操作
- 顺序栈和链栈的基本操作实现
- 数据结构--顺序栈的基本操作
- 数据结构 顺序栈的基本操作
- 【数据结构】顺序栈的基本操作
- 【数据结构】顺序栈的基本操作
- C语言实现顺序栈的基本操作
- C语言实现顺序栈的基本操作
- 顺序栈——9种基本操作和实现(C语言)
- 【C++/数据结构】顺序表的基本操作
- 算法与数据结构-栈的基本操作C语言实现
- 实现数据结构顺序表的基本操作
- JSF Panelgrid 使用
- VMware 8安装Mac OS X 10.7 Lion正式版
- SubSonic 安装与使用
- Java 容器 总结
- 国外程序员推荐:每个程序员都应读的书
- 数据结构顺序栈和链栈基本操作----c++实现
- WinForm之中BindingNavigator控件的使用
- 软件中文档和技术一样重要
- POJ 2135 费用流 spfa
- 程序员成功之路
- 教你如何发外链
- Java环境变量设置
- Real-time frameworks
- 数据结构栈的应用