上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 22 下一页
摘要: 题目链接 105. 从前序与中序遍历序列构造二叉树 思路 先序遍历的顺序是根左右,中序遍历的顺序是左根右,所以在 preorder 数组中的首元素一定是当前树的树根,再从 inorder 数组中找到这个元素的下标 index,这样 index 的左边是左子树,右边是右子树。之后再分别递归建立左右子树 阅读全文
posted @ 2023-02-03 14:28 Frodo1124 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 题目链接 235. 二叉搜索树的最近公共祖先 思路 与 【DFS】LeetCode 236. 二叉树的最近公共祖先 一模一样 代码 class Solution { public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, Tre 阅读全文
posted @ 2023-02-03 12:11 Frodo1124 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 题目链接 236. 二叉树的最近公共祖先 思路 代码 class Solution { public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { if(root == null || root == p 阅读全文
posted @ 2023-02-03 10:47 Frodo1124 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 题目链接 124. 二叉树中的最大路径和 思路 一个子树内部的最大路径和 = 左子树提供的最大路径和 + 根节点值 + 右子树提供的最大路径和。即 dfs(root.left)+root.val+dfs(root.right) 定义dfs函数:返回当前子树能向父节点“提供”的最大路径和。即,一条从父 阅读全文
posted @ 2023-02-02 10:48 Frodo1124 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 题目链接 314. 二叉树的垂直遍历 思路 如图所示,可以对输出列次顺序作如下标记。 将每一列的列号作为 key,同时将该列的所有结点组成的 List 作为 value,使用 HashMap<Integer, ArrayList<Integer>> 进行存储。 注意: 在进行 BFS 的过程中要存储 阅读全文
posted @ 2023-02-01 19:54 Frodo1124 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 题目链接 26. 删除有序数组中的重复项 思路 设定两个指针 i 和 j,使用 j 遍历数组,将与前项不相等的元素放到 i 的位置。 代码 、class Solution { public int removeDuplicates(int[] nums) { int i = 1; int j = 1 阅读全文
posted @ 2023-01-31 09:10 Frodo1124 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 题目链接 283. 移动零 思路 设定两个指针 i 和 j,使用 j 遍历数组,将非零元素送到 i 的位置后 i++。经过第一次循环后所有的非零数都被送到了数字前面,只需要将剩余的位置变为 0 即可。 代码 class Solution { public void moveZeroes(int[] 阅读全文
posted @ 2023-01-31 09:05 Frodo1124 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 题目链接 11. 盛最多水的容器 思路 在每个状态下,无论长板或短板向中间收窄一格,都会导致水槽底边宽度−1: 若向内移动短板,则 $min(h[i],h[j])$ 可能变大,因此下个水槽的面积可能增大 。 若向内移动长板,则 $min(h[i],h[j])$ 不变或变小,因此下个水槽的面积一定减小 阅读全文
posted @ 2023-01-30 19:25 Frodo1124 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 题目链接 18. 四数之和 思路 与 【双指针】LeetCode 15. 三数之和 思路相似,但是要注意测试用例可能溢出,需要转换为 long 代码 class Solution { public List<List<Integer>> fourSum(int[] nums, int target) 阅读全文
posted @ 2023-01-30 09:56 Frodo1124 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题目链接 16. 最接近的三数之和 思路 借鉴 【双指针】LeetCode 15. 三数之和 的思路,只不过把0换成 target 代码 class Solution { public int threeSumClosest(int[] nums, int target) { Arrays.sort 阅读全文
posted @ 2023-01-29 16:21 Frodo1124 阅读(26) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 22 下一页