栈的反转
来源:互联网 发布:怎么开淘宝网店挣钱 编辑:程序博客网 时间:2024/06/06 14:28
要求将栈中元素反转,只能使用本身的pop操作和递归函数
class StackReverse { int getStackBottomElement(stack<int> &s){//返回栈底元素并移除栈底元素 int x = s.top(); s.pop(); if(s.empty()) return x; else{ int y = getStackBottomElement(s); s.push(x); return y; } } void reverseStack(stack<int> &s){ if(s.empty()) return; else{ int x = getStackBottomElement(s); reverseStack(s); s.push(x); } }public: vector<int> reverseStack(vector<int> A, int n) {//A中元素为栈中元素序列.A[0]为栈顶,A[n-1]为栈底. stack<int>s; for (int i=n-1; i>=0; --i) { s.push(A[i]); } reverseStack(s); vector<int>ans; while (!s.empty()) { ans.push_back(s.top()); s.pop(); } return ans; }};
0 0
- 栈的反转
- 栈的反转
- 栈的反转练习题
- 栈的反转练习
- 栈的反转
- 栈的反转
- java实现栈的反转
- 数据结构--栈的反转练习题
- 反转栈
- 栈的应用之字符串的反转
- 反转字符串的拓展
- 单链表的反转
- 单链表的反转
- 链表的反转
- 反转你的脑
- spring的控制反转
- c# 字符串的反转
- 句子字符串的反转
- JavaScript Window - 浏览器对象模型
- 2016.3.17
- TabLayout的简单使用
- 小知识点总结
- [Chromium中文文档]Web安全研究
- 栈的反转
- CSS记录-1-ID和类选择符
- 关于重写父类接口的方法是,冒出去除@Override的解决办法
- 图像形态学处理(3)
- ubuntu下自动安装arm-linux-gcc和arm-linux-g++
- matlab粒子群算法结合模糊聚类分割算法实现图像的分割
- About MMDevice API (MSDN文档理解)
- FTPClient 远程文件读写(Java)
- unity3d google play 那些坑