Python程式設計題30--用列表實現棧
阿新 • • 發佈:2021-11-27
題目
棧是一種常見的資料結構,其特點是 先進後出
,也就是說最先放進去的元素,需要到最後才能取出來。
請使用 列表list 模擬實現棧的下列操作:
- push(x) -- 將元素 x 壓入棧頂
- pop() -- 移除棧頂元素
- top() -- 獲取棧頂元素
- empty() -- 判斷棧是否為空
- size() -- 獲取棧的長度
說明:假設每次呼叫 pop 和 top 都能保證棧不為空。
程式碼實現
class MyStack: def __init__(self): self.s = [] def push(self, x): self.s.append(x) def pop(self): self.s.pop() def top(self): return self.s[-1] def empty(self): return self.s == [] def size(self): return len(self.s)
測試過程
if __name__ == '__main__':
stack = MyStack()
stack.push(11) # 入棧
stack.push(22) # 入棧
print(stack.top())
print(stack.size())
stack.pop() # 出棧
print(stack.empty())
print(stack.top())
stack.pop() # 出棧
print(stack.size())
print(stack.empty())
執行程式碼後,得到如下結果:
22
2
False
11
0
True
作者:wintest
出處:https://www.cnblogs.com/wintest
本文版權歸作者和部落格園共有,歡迎轉載,但必須在文章頁面明顯位置給出原文連結,並保留此段宣告,否則保留追究法律責任的權利。