題目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...