剑指offer#9
作者:互联网
啥也不说,先上图
一道不难的题,竟然花费我那么长时间......利用俩个栈去实现一个队列
就是利用栈的本质:先进后出(可以举一反二,用两个队列实现一个栈)
我在写的时候,感觉有点走老路了,困惑C++的语法
class CQueue {
public:
stack<int>stack1;
stack<int>stack2;
CQueue() {
//while (!stack1.empty())
// stack1.pop();
// while (!stack2.empty())
//stack2.pop();
}
void appendTail(int value) {
stack1.push(value);
}
int deleteHead() {
if (stack2.size() <= 0)
{
while (stack1.size() > 0)
{
int temp = stack1.top();
stack1.pop();
stack2.push(temp);
}
}
if (stack2.size() == 0)//一开始是stack1.size() == 0 一个样例都过不了
return -1;
else{
int back = stack2.top();
stack2.pop();
return back;
}
}
};
/**
* Your CQueue object will be instantiated and called as such:
* CQueue* obj = new CQueue();
* obj->appendTail(value);
* int param_2 = obj->deleteHead();
*/
上午和下午想在阿里云服务器上装vscode,没成功,换了好几个操作系统都没用,太挫士气了,我想把这事搁置一段时间,等积攒了信心再去弄它,不过我下载了vscode的window版本,但hello world我都没把它正常显示出来。
我爸中午去做了核酸,晚饭时,听到他同事跟那啥一样打电话给他要结果,就跟吵架一样,我心里很不爽,为什么要欺负老实人,别人招你惹你了?我不喜欢我爸的那种工作环境,我也不知道他是怎么想的,从我妈嘴里听到我爸经常和别人吵架,那些利用别人的善良的人真他妈的该死!
现在已经是第二天了,我困死了,相比于那些医护工作者,这不算什么,希望疫情赶紧控制住,我想正常开学,不想上网课,电脑从早上起来开到现在,心疼。
标签:obj,offer,int,CQueue,pop,stack2,stack1 来源: https://www.cnblogs.com/sixiaoxiaoya/p/15805967.html