LeetCode 74. 搜索二维矩阵 74. 搜索二维矩阵解题思路将二维矩阵按行优先平铺视为一维有序数组,直接对整体做二分查找,通过「行=mid/列数,列=mid%列数」映射回二维坐标比较,找到目标返回true 2026-02-08 LeetCode #二分查找 #数组 #矩阵
LeetCode 75. 颜色分类 75. 颜色分类解题思路 统计频次: 使用数组 count 分别统计 0、1、2 出现的次数 重写数组:根据统计结果,按顺序(0、1、2)将元素写回原数组 nums 2026-02-08 LeetCode #排序 #数组 #双指针
LeetCode 98. 验证二叉搜索树 98. 验证二叉搜索树解题思路 前序遍历 → 根节点向下传递范围 中序遍历 → 把二叉搜索树看成一个有序数组 Q: 为什么 Java 等语言要用 long 类型?题目不是只有 int 类型吗?A: 虽然题目是 int 类型,但开始递归的时候,left 需要比所有节点值都要小,right 需要比所有节点值都要大,如果节点值刚好是 int 的最小值/最大值,就没有这样的 left 和 2026-02-08 LeetCode #树 #深度优先搜索 #二叉树 #二叉搜索树
LeetCode 994. 腐烂的橘子 994. 腐烂的橘子解题思路「多源 BFS 问题」先统计所有新鲜橘子数量,同时将初始所有腐烂橘子作为BFS第一层起点,然后按每分钟扩散感染相邻新鲜橘子,每感染一个就减少新鲜计数,直到没有新鲜橘子或无法继续扩散,最终返回耗时或 -1 2026-02-08 LeetCode #数组 #广度优先搜索 #矩阵
LeetCode 51. N皇后 51. N皇后解题思路「N皇后是按行进行递归,永远不会在同一个行放两个皇后」通过col dg udg 三个布尔数据维护列,主对角线,反对角线是否已被皇后占据 col[i] 表示第 i 列是否有皇后 dg[i - j + n] 表示主对角线 (i - j) 是否有皇后 udg[i + j] 表示反对角线 (i + j) 是否有皇后 主对角线上,「行坐标 - 列坐标」均相等,为了保证为正数,额外 + 2026-02-07 LeetCode #数组 #回溯