09 用兩個棧實現佇列 python

2021-10-04 23:45:34 字數 532 閱讀 3683

題目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.pop()

else:

while len(self.stack1)>0:

return self.stack2.pop()

def empty(self):

if len(self.stack2)==0 and len(self.stack1)==0:

return true

else:

return false

注:乙個棧用來模擬入隊,另乙個棧模擬出隊。如果棧2為空,從棧1將資料移到棧2。棧1和棧2全為空表示隊列為空。

09 用兩個棧實現佇列

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

09 用兩個棧實現佇列

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

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

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