Sword Finger Offer Interview Question 09. 2つのスタックを使用してキュー(キュー、スタック)を実装する

タイトルの説明

2つのスタックを持つキューを実装します。キューの宣言は次のとおりです。2つの関数appendTailとdeleteHeadを実装して、キューの最後に整数を挿入し、キューの先頭にある整数を削除する機能を完了してください。(キューに要素がない場合、deleteHead操作は-1を返します)
ここに画像の説明を挿入

アイデア

詳細はリンクを参照してください

コード

class CQueue:
	def __init__(self):
		self.A, self.B = [], []
	def appendTail(self,value:int)->None:
		self.A.append(value)
	def deleteHead(self)->int:
		if self.B:
			return self.B.pop()
		if not self.A:
			return -1
		while self.A:
			self.B.append(self.A.pop())
		return self.B.pop()
227件のオリジナル記事を公開 633 件を賞賛 30,000回以上の閲覧

おすすめ

転載: blog.csdn.net/weixin_37763870/article/details/105500230