队列和栈的互相实现 概述:1. 用队列实现栈;2. 用栈实现队列 队列: 先进先出 栈:先进后出 队列实现栈 思路 实现 12345678910111213141516171819202122232425262728293031323334class MyStack {public: void Push(int val) { if(queueSta.empty()) { queueSta.push(val); } else { int cnt = queueSta.size(); queueSta.push(val); while(cnt-- > 0) { queueSta.push(queueSta.front()); queueSta.pop(); } } } int Pop() { int res = queueSta.front(); queueSta.pop(); return res; } bool Empty() {return queueSta.empty();}; private: queue<int> queueSta;}; 栈实现队列 思路 实现 1234567891011121314151617181920212223242526class MyQueue {public: void Push(int val) { sta1.push(val); } int Pop() { if(sta2.empty()) { while(!sta1.empty()) { sta2.push(sta1.top()); sta1.pop(); } } int res = sta2.top(); sta2.pop(); return res; } private: stack<int> sta1,sta2;}; B_Code > CPP > STL #CPP #LeetCode/队列 #LeetCode/栈 队列和栈的互相实现 https://hodlyounger.github.io/2023/10/27/B_Code/CPP/STL/【STL】队列和栈的互相实现/ 作者 mingming 发布于 2023年10月27日 许可协议 【CPP】std::future 上一篇 【C++】常用编码及经验整理 下一篇