Skip to content

数据结构

栈(Stack)

python
# Python 用 list 模拟栈
stack = []
stack.append(1)    # push
stack.append(2)
top = stack.pop()  # pop -> 2
peek = stack[-1]   # 查看栈顶 -> 1

应用场景: 括号匹配、函数调用栈、浏览器历史、表达式求值

队列(Queue)

python
from collections import deque

q = deque()
q.append(1)        # 入队
q.append(2)
front = q.popleft()  # 出队 -> 1

应用场景: BFS、任务调度、消息队列

哈希表

python
# Python dict 就是哈希表
freq = {}
for char in "hello":
    freq[char] = freq.get(char, 0) + 1
# {'h':1, 'e':1, 'l':2, 'o':1}

二叉树遍历

python
class TreeNode:
    def __init__(self, val=0):
        self.val = val
        self.left = self.right = None

# 前序:根 -> 左 -> 右
def preorder(root):
    if not root: return []
    return [root.val] + preorder(root.left) + preorder(root.right)

# 层序(BFS)
from collections import deque
def levelorder(root):
    if not root: return []
    res, q = [], deque([root])
    while q:
        node = q.popleft()
        res.append(node.val)
        if node.left:  q.append(node.left)
        if node.right: q.append(node.right)
    return res

用 VitePress 构建