算法导论 chapter 10.1 Page233 Stack push and pop
2014-07-18 18:16
381 查看
//***算法导论 chapter 10 Elementary Data Structures***/// //Page 233 伪代码转换成代码 //Stack push and pop #include <iostream> #define TRUE 1 #define FALSE 0 using namespace std; int stack_array[20]={0};//定义一个数组,当做桟来使用 int top=0; //top指示桟的顶端元素,0代表桟为空 //判断桟是否为空,为空返回1,反之为0 int stack_empty(int top) { if(top==0) return TRUE; else return FALSE; } //将新元素x压入桟中 int push(int *ptr, int x) { top+=1; *(ptr+top)=x; return 0; } //将顶端的元素弹出桟,并返回弹出的元素 int pop(int *ptr) { if(stack_empty(top)==1) cout<<"underflow"<<endl; else { top-=1; return *(ptr+top+1); } return 0; } //打印桟 void print_stack(int *ptr) { if(stack_empty(top)==1) cout<<"The stack is empty."<<endl; else { for(int i=1;i<=top;++i) { cout<<*(ptr+i)<<" "; } cout<<"Top = "<<top; cout<<endl; } } int main() { push(stack_array,15); push(stack_array,6); push(stack_array,2); push(stack_array,9); print_stack(stack_array); pop(stack_array); print_stack(stack_array); return 0; }
相关文章推荐
- Stack that Support Push, Pop, and GetMin in Constant Time
- stack manipulation push and pop
- 实现一个栈Stack,要求实现Push、Pop、Min(返回最小值的操作)的时间复杂度为O(1)
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、 Min(返回最小值的操作)的时间复杂度为O(1)
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- why std::stack has separate top() and pop()
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1) /查找一个字符串中第一个只出现两次的字符
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- .set push and .set pop
- 【15】Design a stack which has push pop min max
- 实现一个栈Stack,要求实现Push(入栈)、Pop(出栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- 编程实现一个堆栈类Stack,要有push()压栈方法,pop()出栈方法,clear()方法
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- How To Install an Apache, MySQL, and PHP (FAMP) Stack on FreeBSD 10.1
- 算法导论学习10.1 两个栈共享一个数组 and 两个栈实现一个队列 and 两个队列实现一个栈
- 树的遍历 迭代算法——思路:初始化stack,pop stack利用pop的node,push new node to stack,可以考虑迭代一颗树 因为后序遍历最后还要要访问根结点一次,所以要访问根结点两次是难点
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- 【每日一题】实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- How to change the Push and Pop animations in a navigation based app