# | 题名 | 标签 | 难度 | 独立完成 | GO | 题解 |
---|---|---|---|---|---|---|
1 | 两数相加 | 链表 | 中等 | - [x] |
|
- [x]
|
- [ ]
|
| 2 | 反转链表 | 链表 | 简单 |
- [x]
|
- [x]
|
- [ ]
|
| 3 | 删除中间节点 | 链表 | 简单 |
- [x]
|
- [x]
|
- [ ]
|
| 4 | 删除链表节点 | 链表 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 5 | 合并两个排序链表 | 链表 分治法 | 简单 |
- [x]
|
- [x]
|
- [ ]
|
| 6 | 连续子数组的最大和 | 动态规划 分治法 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 7 | 斐波那契数 | 动态规划 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 8 | 二叉树最大深度 | 树 递归 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 9 | 二叉树的最小深度 | 树 递归 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 10 | 环形链表 | 链表双指针 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 11 | 有效的括号 | 栈 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 12 | 删除最外层的括号 | 栈 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 13 | 两个链表的第一个公共节点 | 链表 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 14 | 一维数组的动态和 | 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 15 | 移除链表元素 | 链表 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 16 | 找出数组中的重复数字 | 数组哈希表 | 简单 |
- [x]
|
- [ ]
|
- [x]
|
| 17 | 二维数组中的查找 | 数组 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 18 | 转置矩阵 | 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 19 | 有序数组的平方 | 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 20 | 岛屿最大面积 | 数组 深度优先遍历 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 21 | 打家劫舍 | 动态规划 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 22 | 替换空格 | 字符串 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 23 | 从尾到头打印链表 | 链表 栈 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 24 | 旋转数组 | 数组 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 25 | 旋转链表 | 链表 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 26 | 重建二叉树 | 树 递归 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 27 | 连续子数组的最大和 | 动态规划 分治法 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 28 | 两数之和 | 数组 哈希表 | 简单 |
- [ ]
|
- [ ]
|
- [ ]
|
| 29 | 返回链表倒数第k个节点 | 链表 双指针 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 30 | 主要元素 | 数组 | 简单 |
- [ ]
|
- [ ]
|
- [ ]
|
| 31 | 删除排序链表的重复元素 | 链表 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 32 | 删除链表倒数第n个节点 | 链表 双指针 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 34 | 用两个栈实现队列 | 栈 队列 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 35 | 斐波那契数列 | 动态规划 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 36 | 青蛙跳台阶 | 动态规划 数组 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 37 | 旋转数组的最小数字 | 二分查找 | 简单 |
- [ ]
|
- [ ]
|
- [ ]
|
| 38 | 矩阵中路径 | 深度优先遍历 回溯法 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 39 | 岛屿的数量 | 深度优先遍历 回溯法 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 40 | 翻转二叉树 | 树 递归 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 41 | 相交链表 | 链表 双指针 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 42 | 对称二叉树 | 树 递归 | 简单 |
- [ ]
|
- [ ]
|
- [ ]
|
| 43 | 一次编辑距离 | 字符串 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 44 | 剪绳子-1 | 动态规划 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 45 | 整数拆分 | 动态规划 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 46 | 剪绳子-2 | 动态规划 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 47 | 二进制位中1的个数 | 位运算 | 简单 |
- [x]
|
- [ ]
|
- [ ]
|
| 48 | 位1的个数 | 位运算 | 简单 |
- [ ]
|
- [ ]
|
- [ ]
|
| 49 | 数值的整数次方 | 位运算 | 中等 |
- [ ]
|
- [ ]
|
- [ ]
|
| 50 | pow(x, n) | 位运算 | 中等 |
- [x]
|
- [ ]
|
- [ ]
|
| 51 | 链表的倒数第k个节点 | 链表 | 简单 |
- [x]
| |
- [ ]
|
| 52 | 调整数组顺序使奇数位于偶数前面 | 数组 双指针 | 简单 |
- [ ]
| |
- [ ]
|
| 53 | 树的子结构 | 树 递归 | 中等 |
- [ ]
| |
- [ ]
|
| 54 | 二叉树的镜像 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 55 | 对称二叉树 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 56 | 顺时针打印矩阵 | 数组 | 简单 |
- [ ]
| |
- [ ]
|
| 57 | 螺旋数组 | 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 58 | k个一组翻转链表 | 链表 | 困难 |
- [ ]
| |
- [ ]
|
| 59 | 包含min函数的栈 | 栈 | 简单 |
- [x]
| |
- [ ]
|
| 60 | 最小栈 | 栈 | 简单 |
- [x]
| |
- [ ]
|
| 61 | 字符串相加 | 字符串 | 简单 |
- [x]
| |
- [ ]
|
| 62 | 栈的压入弹出序列 | 栈 | 中等 |
- [ ]
| |
- [ ]
|
| 63 | 无重复字符的最长子串 | 字符串 滑动窗口 | 中等 |
- [ ]
| |
- [ ]
|
| 64 | 三数之和 | 双指针 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 65 | 最大子序和 | 动态规划 分治法 | 简单 |
- [x]
| |
- [ ]
|
| 66 | 从上到下打印二叉树 | 树 广度优先遍历 | 中等 |
- [x]
| |
- [ ]
|
| 67 | 从上到下打印二叉树 | 树 广度优先遍历 | 简单 |
- [ ]
| |
- [ ]
|
| 68 | 寻找两个正序数组的中位数 | 数组 | 困难 |
- [ ]
| |
- [ ]
|
| 69 | 相隔为1的编辑距离 | 字符串 | 中等 |
- [x]
| |
- [ ]
|
| 70 | LRU缓存机制 | 哈希表 | 中等 |
- [ ]
| |
- [ ]
|
| 71 | 反转链表Ⅱ | 链表 | 中等 |
- [x]
| |
- [ ]
|
| 72 | 合并两个有序数组 | 双指针 数组 | 简单 |
- [x]
| |
- [ ]
|
| 73 | 盛水最多的容器 | 双指针 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 74 | 最长公共前缀 | 字符串 | 简单 |
- [ ]
| |
- [ ]
|
| 75 | 排序链表 | 双指针 链表 递归 | 中等 |
- [ ]
| |
- [ ]
|
| 76 | 全排列 | 回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 77 | 单词搜索 | 回溯法 | 中等 |
- [x]
| |
- [ ]
|
| 78 | 接雨水 | 数组 | 困难 |
- [x]
| |
- [ ]
|
| 79 | 二叉搜索树的后序遍历序列 | 树 递归 | 中等 |
- [x]
| |
- [ ]
|
| 80 | 24点游戏 | 回溯法 深度优先遍历 | 困难 |
- [ ]
| |
- [ ]
|
| 81 | 字符串转数字 | 字符串 自动机 | 中等 |
- [ ]
| |
- [ ]
|
| 82 | 主要元素 | 数组 | 简单 |
- [ ]
| |
- [ ]
|
| 83 | 反转字符串 | 字符串 | 简单 |
- [x]
| |
- [ ]
|
| 84 | 二叉树的中序遍历 | 树 递归 | 中等 |
- [x]
| |
- [ ]
|
| 85 | 买卖股票的最佳时机 | 动态规划 | 简单 |
- [x]
| |
- [ ]
|
| 86 | 数组中第K个最大元素 | 递归 分治法 | 中等 |
- [x]
| |
- [ ]
|
| 87 | 合并k个有序链表 | 递归 分治法 | 困难 |
- [x]
| |
- [ ]
|
| 88 | 路径总和 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 89 | 平衡二叉树 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 90 | 平衡二叉树 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 91 | 两数相加Ⅱ | 链表 | 中等 |
- [x]
| |
- [ ]
|
| 92 | 寻找重复数 | 数组 | 中等 |
- [x]
| |
- [ ]
|
| 93 | 回文链表 | 链表 | 简单 |
- [x]
| |
- [ ]
|
| 94 | 两两交换链表的节点 | 链表 | 中等 |
- [x]
| |
- [ ]
|
| 95 | 重排链表 | 链表 | 中等 |
- [ ]
| |
- [ ]
|
| 96 | 下一个排列 | 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 97 | 二叉树的深度 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 98 | 两个数组的交集 | 数组 | 简单 |
- [ ]
| |
- [ ]
|
| 99 | 两数之和 II - 输入有序数组 | 数组 | 简单 |
- [ ]
| |
- [ ]
|
| 100 | 公平的糖果交换 | 数组 | 简单 |
- [x]
| |
- [ ]
|
| 101 | 根据身高重建队列 | 排序 | 中等 |
- [ ]
| |
- [ ]
|
| 102 | 替换后的最长重复字符 | 字符串 滑动窗口双指针 | 中等 |
- [ ]
| |
- [ ]
|
| 103 | 最长递增子序列 | 二分查找 贪心算法 动态规划 | 中等 |
- [ ]
| |
- [ ]
|
| 104 | 只出现一次的数字 | 位运算 哈希表 | 简单 |
- [x]
| |
- [ ]
|
| 105 | 二叉树的层序遍历 II | 深度优先遍历 | 简单 |
- [ ]
| |
- [ ]
|
| 106 | N叉树的前序遍历 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 108 | 相同的树 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 109 | 有序链表转二叉树 | 树 递归 | 中等 |
- [ ]
| |
- [ ]
|
| 110 | 链表的中间节点 | 双指针 | 简单 |
- [x]
| |
- [ ]
|
| 111 | 二叉树的层序遍历 | 广度优先遍历 | 中等 |
- [ ]
| |
- [ ]
|
| 112 | 将有序数组转化为二叉树 | 树 递归 | 简单 |
- [ ]
| |
- [ ]
|
| 113 | 不同的二叉搜索树 | 树 动态规划 | 中等 |
- [ ]
| |
- [ ]
|
| 114 | 特定深度节点链表 | 广度优先遍历 | 中等 |
- [x]
| |
- [ ]
|
| 115 | 排序数组 | 排序 | 中等 |
- [x]
| |
- [ ]
|
| 116 | 括号生成 | 字符串 回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 117 | 二进制求和 | 字符串 | 简单 |
- [x]
| |
- [ ]
|
| 118 | 电话号码的字母组合 | 字符串 回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 119 | 寻找所有的独生节点 | 树 深度优先遍历 | 简单 |
- [x]
| |
- [ ]
|
| 121 | N叉树的最大高度 | 树 深度优先遍历 | 简单 |
- [x]
| |
- [ ]
|
| 122 | 二叉树的所有路径 | 树 深度优先遍历 回溯法 | 简单 |
- [x]
| |
- [ ]
|
| 123 | 最小高度树 | 树 深度优先遍历 | 简单 |
- [x]
| |
- [ ]
|
| 124 | 检查平衡性 | 树 深度优先遍历 | 简单 |
- [x]
| |
- [ ]
|
| 125 | 复原IP地址 | 字符串回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 126 | 分割回文串 | 字符串 回溯法 深度优先遍历 | 中等 |
- [ ]
| |
- [ ]
|
| 127 | 零钱兑换 | 动态规划 | 中等 |
- [ ]
| |
- [ ]
|
| 128 | 合并区间 | 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 129 | 最大连续1的个数 | 数组 | 简单 |
- [ ]
| |
- [ ]
|
| 130 | 字符串的排列 | 字符串 回溯法 | 中等 |
- [x]
| |
- [ ]
|
| 131 | 四数之和 | 双指针 数组 | 中等 |
- [x]
| |
- [ ]
|
| 132 | 子集 | 回溯法 | 中等 |
- [x]
| |
- [ ]
|
| 133 | 子集 II | 回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 134 | 寻找旋转排序数组中的最小值 | 二分查找 | 中等 |
- [ ]
| |
- [ ]
|
| 135 | 寻找旋转排序数组中的最小值 II | 二分查找 | 困难 |
- [ ]
| |
- [ ]
|
| 136 | 搜索旋转排序数组 | 二分查找 | 中等 |
- [x]
| |
- [ ]
|
| 137 | 爬楼梯 | 动态规划 数组 | 简单 |
- [x]
| |
- [ ]
|
| 138 | 最大正方形 | 动态规划 | 中等 |
- [ ]
| |
- [ ]
|
| 139 | 移动零 | 数组 | 简单 |
- [x]
| |
- [ ]
|
| 140 | 每日温度 | 单调栈 | 中等 |
- [ ]
| |
- [ ]
|
| 141 | 删除排序链表中的重复元素 II | 链表 | 中等 |
- [x]
| |
- [ ]
|
| 142 | x的平方根 | 数学 | 简单 |
- [x]
| |
- [ ]
|
| 143 | 交替合并字符串 | 字符串 | 简单 |
- [x]
| |
- [ ]
|
| 144 | 移动所有球到每个盒子所需最小操作数 | 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 145 | 实现前缀树 | 树 前缀树 | 中等 |
- [ ]
| |
- [ ]
|
| 146 | 单词的压缩编码 | 树 前缀树 | 中等 |
- [ ]
| |
- [ ]
|
| 147 | 添加与搜索单词 | 树 前缀树 | 中等 |
- [x]
| |
- [ ]
|
| 148 | 字符串相乘 | 字符串 数学 | 中等 |
- [ ]
| |
- [ ]
|
| 149 | 字符串解码 | 栈 | 中等 |
- [ ]
| |
- [ ]
|
| 150 | 跳跃游戏 | 贪心算法 数组 | 中等 |
- [ ]
| |
- [ ]
|
| 151 | 旋转图像 | 数组 | 中等 |
- [x]
| |
- [ ]
|
| 152 | 不同路径 | 动态规划 数组 | 中等 |
- [x]
| |
- [ ]
|
| 153 | 删除排序数组中的重复项 | 数组 双指针 | 中等 |
- [ ]
| |
- [ ]
|
| 154 | 组合总和 | 数组 回溯法 | 中等 |
- [x]
| |
- [ ]
|
| 155 | 组合总和Ⅱ | 数组 回溯法 | 中等 |
- [x]
| |
- [ ]
|
| 156 | 最大数 | 排序 | 中等 |
- [ ]
| |
- [ ]
|
| 157 | 统计匹配检索规则的物品数量 | 数组 | 简单 |
- [x]
| |
- [ ]
|
| 158 | Z字形变换 | 数组 字符串 | 简单 |
- [x]
| |
- [ ]
|
| 159 | 区域和检索 | 数组 | 中等 |
- [x]
| |
- [ ]
|
| 160 | 最接近的三数之和 | 双指针 | 中等 |
- [ ]
| |
- [ ]
|
| 161 | 从前序与中序遍历序列中构造二叉树 | 树 递归 | 中等 |
- [x]
| |
- [ ]
|
| 162 | 二维区域和检索 | 数组 | 中等 |
- [x]
| |
- [ ]
|
| 163 | 组合 | 回溯法 | 中等 |
- [ ]
| |
- [ ]
|
| 164 | 罗马数字转整数 | 字符串 | 简单 |
- [ ]
| |
- [ ]
|
| 165 | 环形链表Ⅱ | 双指针 | 中等 |
- [ ]
| |
- [ ]
|
| 166 | 比特位计数 | 动态规划 位运算 | 中等 |
- [ ]
| |
- [ ]
|
| 167 | 最小k个数 | 堆 | 中等 |
- [ ]
| |
- [ ]
|
| 168 | 前k个高频单词 | 堆 | 中等 |
- [ ]
| |
- [ ]
|
| 169 | 前k个高频元素 | 堆 | 中等 |
- [x]
| |
- [ ]
|
| 170 | 数据流中的第k大元素 | 堆 | 简单 |
- [x]
| |
- [ ]
|
| 171 | 最后一块石头的重量 | 堆 | 简单 |
- [x]
| |
- [ ]
|
| 172 | 最小的k个数 | 堆 | 简单 |
- [x]
| |
- [ ]
|
| 172 | 俄罗斯套娃信封问题 | 动态规划 | 困难 |
- [ ]
| |
- [ ]
|
| 173 | 礼物的最大价值 | 动态规划 | 中等 |
- [x]
| |
- [ ]
|
| 174 | 左旋转字符串 | 字符串 | 中等 |
- [x]
| |
- [ ]
|
| 175 | 第一个只出现一次的字符 | 数组 哈希表 | 简单 |
- [x]
| |
- [ ]
|
| 176 | 移除元素 | 数组 双指针 | 简单 |
- [x]
| |
- [ ]
|
| 177 | 杨辉三角 | 数组 | 简单 |
- [x]
| |
- [ ]
|
| 179 | 打家劫舍Ⅱ | 动态规划 | 中等 |
- [ ]
| |
- [ ]
|
| 180 | 用栈实现队列 | 栈 | 简单 |
- [x]
| |
- [ ]
|
| 181 | 二叉树中的最大路径和 | 树 深度优先遍历 | 困难 |
- [ ]
| |
- [ ]
|
| 182 | 二叉树的后序遍历 | 栈 | 中等 |
- [ ]
| |
- [ ]
|
| 183 | 缺失的第一个正数 | 数组 | 困难 |
- [x]
| |
- [ ]
|
| 184 | 化栈为队 | 栈 | 简单 |
- [x]
| |
- [ ]
|
| 185 | 完全二叉树的节点个数 | 树 递归 | 中等 |
- [x]
| |
- [ ]
|
| 186 | 最小路径和 | 动态规划 | 中等 |
- [x]
| |
- [ ]
|
| 187 | 求1+2+3+…+n | 递归 | 中等 |
- [x]
| |
- [ ]
|
| 188 | 下一个更大元素Ⅰ | 单调栈 | 简单 |
- [ ]
| |
- [ ]
|
| 189 | 下一个更大元素Ⅱ | 单调栈 | 中等 |
- [x]
| |
- [ ]
|
| 190 | 下一个更大元素Ⅲ | 单调栈 | 中等 |
- [ ]
| |
- [ ]
|
| 191 | 二分查找 | 单调栈 | 简单 |
- [x]
| |
- [ ]
|
| 192 | 找到最近的有相同x或y坐标的点 | 数组 | 简单 |
- [x]
| |
- [ ]
|
| 193 | 判断一个数字是否能表示成3的幂的和 | 数学 | 中等 |
- [x]
| |
- [ ]
|
| 194 | 所有字符串的美丽值之和 | 字符串 | 中等 |
- [x]
| |
- [ ]
|
| 195 | 检查二进制字符串字段 | 字符串 | 简单 |
- [ ]
| |
- [ ]
|
| 196 | 路径总和Ⅱ | 树深度优先遍历 | 中等 |
- [ ]
| |
- [ ]
|
| 197 | strStr() | 字符串 | 简单 |
- [ ]
| |
- [ ]
|
| 198 | 分割回文串Ⅱ | 字符串 动态规划 | 困难 |
- [ ]
| |
- [ ]
|
| 199 | 合并二叉树 | 树 递归 | 简单 |
- [x]
| |
- [ ]
|
| 200 | 全排列Ⅱ | 回溯法 | 中等 |
- [ ]
| |
- [ ]
|