剑指 Offer 栈与队列
2024-10-21 07:49:32
09. 用两个栈实现队列
没啥意思 不要想复杂了 就是暴力
class CQueue {
public:
CQueue() {
}
/*
一个主栈 一个缓存栈
来回导 得到队头
copy后一端变空了
*/
stack<int>stk,cache;
void copy(stack<int>&a,stack<int>&b){
while(a.size()){
b.push(a.top());
a.pop();
}
}
void appendTail(int value) {
stk.push(value);
}
int deleteHead() {
if(stk.empty())return -1;
copy(stk,cache);
int res=cache.top();
cache.pop();
copy(cache,stk);
return res;
}
};
30. 包含min函数的栈
class MinStack {
public:
/** initialize your data structure here. */
MinStack() {
}
stack<int>stk,minn;
void push(int x) {
stk.push(x);
if(minn.empty()||minn.top()>=x)minn.push(x);
}
void pop() {
if(stk.top()==minn.top())minn.pop();
stk.pop();
}
int top() {
return stk.top();
}
int min() {
return minn.top();
}
};
最新文章
- Centos7 下面安装 MySql 客户端
- scikit-learn 朴素贝叶斯类库使用小结
- 怎么通过 Microsof Office Project 2010 来写功能开发计划
- Opencv实现运动检测
- COJ966 WZJ的数据结构(负三十四)
- php下载文件,添加响应头
- JavaScript 对象的几种创建方法
- 超文本传输协议-HTTP/1.1
- Android手势识别 Camera 预览界面上显示文字 布局注意事项(merge布局)
- Python学习笔记:概要
- C# 输入法
- lua API函数大全
- 【剑指offer28:字符串的排列】【java】
- nginx 安装及简单配置(适用 小白)
- redis使用总结(一)(redis客户端使用)
- 刷《剑指offer》笔记
- new关键字对构造函数做了什么
- C# WebApi+Task+WebSocket实战项目演练(四)
- The General Query Log Binary Log
- MarkDown编辑器中缩进