0004 | 寻找两个正序数组的中位数open in new window | JSopen in new window | 数组 二分查找 分治 | |
0023 | 合并 K 个升序链表open in new window | JSopen in new window | 链表 分治 堆(优先队列) 1+ | |
0053 | 最大子数组和open in new window | JSopen in new window | 数组 分治 动态规划 | |
0105 | 从前序与中序遍历序列构造二叉树open in new window | JSopen in new window | 树 数组 哈希表 2+ | |
0106 | 从中序与后序遍历序列构造二叉树open in new window | JSopen in new window | 树 数组 哈希表 2+ | |
0108 | 将有序数组转换为二叉搜索树open in new window | JSopen in new window | 树 二叉搜索树 数组 2+ | |
0109 | 有序链表转换二叉搜索树open in new window | JSopen in new window | 树 二叉搜索树 链表 2+ | |
0148 | 排序链表open in new window | JSopen in new window | 链表 双指针 分治 2+ | |
0169 | 多数元素open in new window | JSopen in new window | 数组 哈希表 分治 2+ | |
0190 | 颠倒二进制位open in new window | | 位运算 分治 | |
0191 | 位1的个数open in new window | JSopen in new window | 位运算 分治 | |
0215 | 数组中的第K个最大元素open in new window | JSopen in new window | 数组 分治 快速选择 2+ | |
0218 | 天际线问题open in new window | | 树状数组 线段树 数组 4+ | |
0240 | 搜索二维矩阵 IIopen in new window | JSopen in new window | 数组 二分查找 分治 1+ | |
0315 | 计算右侧小于当前元素的个数open in new window | | 树状数组 线段树 数组 4+ | |
0324 | 摆动排序 IIopen in new window | | 数组 分治 快速选择 1+ | |
0327 | 区间和的个数open in new window | | 树状数组 线段树 数组 4+ | |
0347 | 前 K 个高频元素open in new window | JSopen in new window | 数组 哈希表 分治 5+ | |
0372 | 超级次方open in new window | | 数学 分治 | |
0395 | 至少有 K 个重复字符的最长子串open in new window | | 哈希表 字符串 分治 1+ | |
0427 | 建立四叉树open in new window | | 树 数组 分治 1+ | |
0493 | 翻转对open in new window | | 树状数组 线段树 数组 4+ | |
0558 | 四叉树交集open in new window | | 树 分治 | |
0654 | 最大二叉树open in new window | JSopen in new window | 栈 树 数组 3+ | |
0889 | 根据前序和后序遍历构造二叉树open in new window | JSopen in new window | 树 数组 哈希表 2+ | |
0912 | 排序数组open in new window | | 数组 分治 桶排序 5+ | |
0918 | 环形子数组的最大和open in new window | | 队列 数组 分治 2+ | |
0932 | 漂亮数组open in new window | | 数组 数学 分治 | |
0973 | 最接近原点的 K 个点open in new window | JSopen in new window | 几何 数组 数学 4+ | |
1274 | 矩形内船只的数目open in new window | | 数组 分治 交互 | |
1382 | 将二叉搜索树变平衡open in new window | | 贪心 树 深度优先搜索 3+ | |
1569 | 将子数组重新排序得到同一个二叉搜索树的方案数open in new window | | 树 并查集 二叉搜索树 7+ | |
1649 | 通过指令创建有序数组open in new window | | 树状数组 线段树 数组 4+ | |
1738 | 找出第 K 大的异或坐标值open in new window | | 位运算 数组 分治 4+ | |
1763 | 最长的美好子字符串open in new window | | 位运算 哈希表 字符串 2+ | |
1982 | 从子集的和还原数组open in new window | | 数组 分治 | |
1985 | 找出数组中的第 K 大整数open in new window | | 数组 字符串 分治 3+ | |
2031 | 1 比 0 多的子数组个数open in new window | | 树状数组 线段树 数组 4+ | |
2179 | 统计数组中好三元组数目open in new window | | 树状数组 线段树 数组 4+ | |
2343 | 裁剪数字后查询第 K 小的数字open in new window | | 数组 字符串 分治 4+ | |
2407 | 最长递增子序列 IIopen in new window | | 树状数组 线段树 队列 4+ | |
2426 | 满足不等式的数对数目open in new window | | 树状数组 线段树 数组 4+ | |
2519 | 统计 K-Big 索引的数量open in new window | | 树状数组 线段树 数组 4+ | |
2613 | 美数对open in new window | | 几何 数组 数学 3+ | |
剑指 Offer 04 | 二维数组中的查找open in new window | JSopen in new window | 数组 二分查找 分治 1+ | |
剑指 Offer 07 | 重建二叉树open in new window | JSopen in new window | 树 数组 哈希表 2+ | |
剑指 Offer 39 | 数组中出现次数超过一半的数字open in new window | JSopen in new window | 数组 哈希表 分治 2+ | |
剑指 Offer 40 | 最小的k个数open in new window | | 数组 分治 快速选择 2+ | |
剑指 Offer 42 | 连续子数组的最大和open in new window | JSopen in new window | 数组 分治 动态规划 | |
剑指 Offer 51 | 数组中的逆序对open in new window | | 树状数组 线段树 数组 4+ | |
剑指 Offer II 060 | 出现频率最高的 k 个数字open in new window | | 数组 哈希表 分治 5+ | |
剑指 Offer II 076 | 数组中的第 k 大的数字open in new window | | 数组 分治 快速选择 2+ | |
剑指 Offer II 077 | 链表排序open in new window | | 链表 双指针 分治 2+ | |
剑指 Offer II 078 | 合并排序链表open in new window | | 链表 分治 堆(优先队列) 1+ | |
面试题 04.02 | 最小高度树open in new window | | 树 二叉搜索树 数组 2+ | |
面试题 10.09 | 排序矩阵查找open in new window | | 数组 二分查找 分治 1+ | |
面试题 16.17 | 连续数列open in new window | | 数组 分治 动态规划 | |
面试题 17.14 | 最小K个数open in new window | | 数组 分治 快速选择 2+ | |