LeetCode

刷题网站: LeetCode大神_灵茶山艾府 LeetCode_Hot100 python常用数据结构: 点击展开:Python常用数据结构及其基本操作 """ Python 常用数据结构(对应 C++ STL)及基本操作 ================================================ C++ Python ------------------------- vector list stack list queue collections.deque unordered_map dict unordered_set set """ # ========================================================== # 1. 数组 / 动态数组 # C++: vector # Python: list # ========================================================== arr = [1, 2, 3] # 创建数组 # 插入元素 arr.append(4) # 尾部插入 O(1) # 在指定位置插入 arr.insert(1, 10) # index=1 插入 10 -> O(n) # 删除尾部 arr.pop() # 删除最后一个元素 O(1) # 删除指定位置 arr.pop(1) # 删除 index=1 # 修改元素 arr[0] = 100 # 查找元素 print(arr[1]) # 遍历数组 for x in arr: print(x) # ========================================================== # 2. 栈 (Stack) # C++: stack # Python: list # ========================================================== stack = [] # 入栈 push stack.append(1) stack.append(2) stack.append(3) # 查看栈顶 print(stack[-1]) stack.top() # 出栈 pop stack.pop() # 判断是否为空 if not stack: print("stack empty") # ========================================================== # 3. 队列 (Queue) # C++: queue # Python: collections.deque # ========================================================== from collections import deque q = deque() # 入队 q.append(1) q.append(2) q.append(3) # 出队 q.popleft() # 查看队首 print(q[0]) # 查看队尾 print(q[-1]) # BFS常用 while q: node = q.popleft() # ========================================================== # 4. 哈希表 / 字典 # C++: unordered_map # Python: dict # ========================================================== mp = {} # 插入 mp["a"] = 1 mp["b"] = 2 # 修改 mp["a"] = 100 # 查询 print(mp["a"]) # 判断key存在 if "a" in mp: print("exist") # 删除 del mp["a"] # 遍历key for k in mp: print(k) # 遍历key-value for k, v in mp.items(): print(k, v) # ========================================================== # 5. 集合 # C++: unordered_set # Python: set # ========================================================== s = set() # 插入 s.add(1) s.add(2) s.add(3) # 删除 s.remove(2) # 删除(如果不存在不会报错) s.discard(10) # 查询 if 1 in s: print("exist") # 遍历 for x in s: print(x) # ========================================================== # 6. 初始化技巧(刷题常用) # ========================================================== # 初始化数组 arr = [0] * 10 # 初始化二维数组 grid = [[0]*5 for _ in range(5)] # 初始化dict mp = {"a": 1, "b": 2} # 初始化set s = {1,2,3} # 初始化队列 q = deque([1,2,3]) # ========================================================== # 7. 常见复杂度总结 # ========================================================== """ list ---- append O(1) pop() O(1) insert O(n) 访问 O(1) stack ----- push O(1) pop O(1) deque ----- append O(1) popleft O(1) dict ---- insert O(1) find O(1) delete O(1) set --- insert O(1) find O(1) delete O(1) """ DAY 1 1.两数之和 O(n^2): class Solution(object): def twoSum(self, nums, target): """ :type nums: List[int] :type target: int :rtype: List[int] """ for i,num1 in enumerate(nums): if target-num1 in nums[i+1:]: j=nums[i+1:].index(target-num1)+1+i return [i,j] 哈希表O(n): ...

少年心事当拏云

2026年2月16日 ✅ Todo 开始Leecode刷题和写题解 开始swift训练的环境配置和数据准备工作 鹏北海,风朝阳,又携书剑路茫茫。 明年此日青云去,却笑人间举子忙。 2026年2月8日-2026年2月15日 (Reset) ✅ Done noting for myself. 2026年2月7日(Sii-Day 7) ✅ Todo 完成微调技术文档,开始强化学习训练 完成Ai-store 相关任务 把所有的夜归还给星河, 把所有春光归还给疏疏篱落, 把所有的慵懒沉迷与不前,归还给过去的我。 明日之我,胸中有丘壑,立马振山河。 ✅ Done 完成微调技术文档,开始强化学习训练 完成Ai-store 相关任务 今天主要还是在体验吧,确实也弄懂不少东西,完成了swift.md初稿,明天继续加油,争取完成任务,早日迈入强化学习的大门。 再次化身压榨的资本家 2026年2月6日(Sii-Day 6) ✅ Todo 完成年终总结ppt,年终组会 ✅ Done 完成年终总结ppt,年终组会 今天年终组会,算是完成了初稿版的年终总结ppt。 不腐烂在这里,是对自己最大的尊重。 没戴眼镜,看不清对岸的风景,就像我看不清我的未来一样 ...