00_数据结构总览 数据结构复杂度速查 数据结构 操作 时间复杂度 列表 索引访问/切片 O(1) / O(k) append/pop(末尾) O(1) insert/pop(开头) O(n) in 检查 O(n) 集合/字典 in 检查 O(1) 平均 add/insert O(1) 平均 remove/delete O(1) 平均 堆 push/pop O(lo 2026-09-19 算法学习 > 01_数据结构
78. 子集 给你一个整数数组 nums,数组中的元素 互不相同。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] 示例 2: 输入:nums = [0] 输出:[[],[0]] 提示: 1 <= nums.length 2026-09-13 刷题笔记 > Leetcode
03_集合 集合set 是无序集合,元素唯一,支持 O(1) 成员检查。 s = set() # 从列表创建(去重) nums = [1, 2, 2, 3, 3, 3] unique = set(nums) # {1, 2, 3} s.add(x) s.remove(x) # 不存在会报错 s.discard(x) # 不存在不报错 s.pop() # 删除 2026-09-14 算法学习 > 01_数据结构
02_字典 字典/哈希表d = {} # 创建 person = {"name": "Alice", "age": 25} # 访问 person["name"] # 'Alice' d.get(key, default) # 获取值,不存在返回 default 2026-09-14 算法学习 > 01_数据结构
01_列表 列表初始化与创建# 自动初始化为全0 a = [0] * n # 二维列表(注意:不能用 [[0]*m]*n,是浅拷贝!) grid = [[0] * m for _ in range(n)] # 列表推导式 squares = [x * x for x in range(n)] evens = [x for x in range(n) if x % 2 == 0] # 基本格式: [表达式 2026-09-14 算法学习 > 01_数据结构
华为机考题型 leetcode:熟悉题型和算法,各类型的题选做10-15道(保底5-8道)针对薄弱知识点查缺补漏题号:字符串:3,49,30线性表:86,16,27,732队列:641,406,899栈:946,116,117,895哈希表:61,729,25,554dfs:105,112,98,494,547,1254bfs:1091,1129,102,101,752动态规划类题目也可以适当熟悉 常考知识点: 2026-09-14 刷题笔记 > 华为机考