09 用兩個棧實現佇列

2021-09-23 22:31:34 字數 462 閱讀 6177

用兩個棧來實現乙個佇列,完成佇列的 push 和 pop 操作。

in 棧用來處理入棧(push)操作,out 棧用來處理出棧(pop)操作。乙個元素進入 in 棧之後,出棧的順序被反轉。當元素要出棧時,需要先進入 out 棧,此時元素出棧順序再一次被反轉,因此出棧順序就和最開始入棧順序是相同的,先進入的元素先退出,這就是佇列的順序。

class

solution

int pop()

}

int pop=stack2.

top();

stack2.

pop();

return pop;

//這裡不能直接return stack.pop();

}private

: stack stack1;

stack stack2;

};

09 用兩個棧實現佇列

2020 06 22 1.題目描述 在佇列尾部插入整數和在佇列頭部刪除整數的功能。若佇列中沒有元素,deletehead 操作返回 1 2.題解 乙個棧用來輸入,乙個棧用來輸出 入棧 直接入棧1即可 出棧 如果棧2為空,則將棧1所有元素放入棧2,並輸出棧2棧頂元素,如果棧2不為空,直接出棧2即可3....

09 用兩個棧實現佇列 python

題目1 用兩個棧實現乙個佇列 class stack2queue object def init self self.stack1 self.stack2 def push self,var def pop self if len self.stack2 0 return self.stack2.p...

用兩個棧實現佇列 用兩個佇列實現棧

劍指offer 面試題7 用兩個棧實現佇列。templateclass cqueue 我們試著用兩個棧來模擬佇列的操作,發現如下可行操作 完整 實現 面試題7 用兩個棧實現佇列 分別完成在隊尾插入結點和在隊頭刪除結點的功能。date 2014 06 27 include include includ...