template<typename T> class MyQueue { public: MyQueue(void) {}; ~MyQueue(void) {}; void enqueue(const T& element) { stackA.push(element); } T dequeue() { if (stackB.size <= 0) { while (stackA.size > 0) { T& data = stackA.top(); stackA.pop(); stackB.push(data); } } if (stackB.size() == 0) { throw new exception("queue is empty"); } T head = stackB.top(); stackB.pop(); return head; } bool isEmpty() { if (stackA.size == 0 && stackB.size() == 0) { return true; } return false; } private: stack<T> stackA; stack<T> stackB; };
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题