摘要: 盛最多水的容器 点击查看代码 class Solution { public int maxArea(int[] height) { int n = height.length; int l = 0; int r = n - 1; int res = Integer.MIN_VALUE; while 阅读全文
posted @ 2025-12-20 19:41 柳成荫y 阅读(9) 评论(0) 推荐(0)
摘要: 四数之和 点击查看代码 class Solution { public List<List<Integer>> fourSum(int[] nums, int target) { int n = nums.length; Arrays.sort(nums); List<List<Integer>> 阅读全文
posted @ 2025-12-19 23:37 柳成荫y 阅读(9) 评论(0) 推荐(0)
摘要: 三数之和 点击查看代码 class Solution { public List<List<Integer>> threeSum(int[] nums) { Arrays.sort(nums); int n = nums.length; List<List<Integer>> res = new A 阅读全文
posted @ 2025-12-18 21:53 柳成荫y 阅读(9) 评论(0) 推荐(0)
摘要: 三数之和 双指针 转换成两数之和问题。 最接近的三数之和 双指针 三数之和基础上增加一个minDiff判断。 阅读全文
posted @ 2025-12-10 17:24 柳成荫y 阅读(11) 评论(0) 推荐(0)
摘要: 最长连续序列 哈希 避免了重复计算同一序列,只有当符合起点的条件时候才遍历,也就是-1不存在。 关键通过判断"前一个元素是否存在"来识别序列起点,从而确保每个序列只被完整遍历一次。 两数之和 双指针 对于一个有序数组来讲,利用有序数组的性质,左右指针相向而行。 根据左+右和目标值的情况 判断指针移动 阅读全文
posted @ 2025-12-09 19:31 柳成荫y 阅读(7) 评论(0) 推荐(0)
摘要: 两数之和 方法:哈希表 创建一个哈希表 (HashMap),key存储数组元素的值 (val) 和value其对应的索引 (idx); 字母异位词分组 方法:哈希表 创建一个哈希表 (HashMap),key存储排序后的字符串,value存储当前字符串对应的异位词分组; 阅读全文
posted @ 2025-12-08 16:57 柳成荫y 阅读(8) 评论(0) 推荐(0)
摘要: 点击查看代码 //闭合区间二分查找 public int Binary_Search_1(int[] num, int target){ int left = 0; int right = num.length - 1; while(left <= right){ int mid = left + 阅读全文
posted @ 2025-11-23 17:38 柳成荫y 阅读(8) 评论(0) 推荐(0)
摘要: 105从前序和中序遍历序列构造二叉树 方法思路:hashmap存中序列表(数和序号)优化时间复杂度,先得到根节点,然后递归创建左子树和右子树。 106从后序和中序遍历序列构造二叉树 同上题 1373二叉搜索树的最大键值和 点击查看代码 class Solution { private int max 阅读全文
posted @ 2025-11-04 09:30 柳成荫y 阅读(15) 评论(0) 推荐(0)
摘要: 2476二叉搜索树最近节点查询 第一种解法:先中序遍历获取每个值,然后两次二分查找遍历过的列表。 第二种解法:优化成一次二分查找 230二叉搜索树中第k小元素 没什么好说的,中序遍历过程记录次数,当次数等于k时就是第k小。 501二叉搜索树中的众数 中序遍历过程中,看pre和当前节点的值是否相同 更 阅读全文
posted @ 2025-11-01 12:18 柳成荫y 阅读(11) 评论(0) 推荐(0)
摘要: 700二叉搜索树中的搜索 带裁剪的前序遍历:搜索使用前序遍历,根据BST的左子树<根<右子树的特性,可以裁剪掉左右子树。 938二叉搜索树的范围和 依旧带裁剪的前序遍历:搜索使用前序遍历,根据BST的左子树<根<右子树的特性,可以裁剪掉左右子树。 530二叉搜索树的最小绝对差 中序遍历:最小绝对差一 阅读全文
posted @ 2025-10-29 12:38 柳成荫y 阅读(10) 评论(0) 推荐(0)