色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python 棧的案例

江奕云1年前7瀏覽0評論

Python 棧是使用列表模擬實現的一種數據結構。它遵循先進后出的原則,就像書堆成一疊,從最后放入的最先取出來一樣。Python 棧可以通過 push, pop 和 peek 方法實現入棧、出棧和獲取棧頂元素等操作。

# 示例代碼
class Stack:
def __init__(self):
self.stack = []
def push(self, item):
self.stack.append(item)
def pop(self):
if not self.is_empty():
return self.stack.pop()
def peek(self):
if not self.is_empty():
return self.stack[-1]
def is_empty(self):
return len(self.stack) == 0
# 使用棧來判斷括號是否匹配
def is_balanced(str):
stack = Stack()
for char in str:
if char == "(":
stack.push(char)
elif char == ")":
if stack.is_empty():
return False
stack.pop()
return stack.is_empty()
# 測試代碼
str = "(()())()"
if is_balanced(str):
print("括號匹配")
else:
print("括號不匹配")

上面代碼中僅實現了棧的一部分功能,但它展示了棧的基本概念和使用方法。此外,我們還可以用棧來解決更多實際問題,如逆波蘭表達式計算、迷宮求解、漢諾塔等。棧是一種非常常用而又實用的數據結構,它可以幫助我們優雅地解決很多問題。