随笔分类 -  算法

摘要:【LeetCode 33】算法:搜索旋转排序数组使用时间复杂度为 O(log n) 的二分查找算法实现“搜索旋转排序数组”。 阅读全文
posted @ 2025-09-04 20:23 junjunyi 阅读(48) 评论(0) 推荐(0)
摘要:【LeetCode 34】算法:在排序数组中查找元素的第一个和最后一个位置本文设计并实现时间复杂度为 O(log n) 的算法解决:在排序数组中查找元素的第一个和最后一个位置。 阅读全文
posted @ 2025-09-01 23:28 junjunyi 阅读(40) 评论(0) 推荐(0)
摘要:【LeetCode 74】算法:搜索二维矩阵使用二分查找算法和Java代码实现:给定一个有序矩阵和一个目标值 target,确定这个值是否存在于矩阵中 阅读全文
posted @ 2025-09-01 00:05 junjunyi 阅读(63) 评论(0) 推荐(0)
摘要:使用时间复杂度为 O(log n) 的二分查找算法,实现在排序数组中找到目标值的索引,给出了Java代码实现和详细算法步骤。 阅读全文
posted @ 2025-08-30 23:21 junjunyi 阅读(68) 评论(0) 推荐(0)
摘要:【LeetCode 236】算法:二叉树的最近公共祖先本文使用递归法找到给定二叉树中两个指定节点的最近公共祖先,给出算法步骤和Java代码的实现。 阅读全文
posted @ 2025-08-29 23:34 junjunyi 阅读(50) 评论(0) 推荐(0)
摘要:【LeetCode 437】算法:路径总和 III题目:给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。 路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。 核心思想: 这个问题的核心思想是深度优先搜索(DFS) 阅读全文
posted @ 2025-08-27 21:53 junjunyi 阅读(41) 评论(0) 推荐(0)
摘要:题目:给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 根据给定的先序遍历(preorder)和中序遍历(inorder)数组来重建二叉树是一个经典的算法问题。先序遍历的第一个元 阅读全文
posted @ 2025-08-26 23:58 junjunyi 阅读(84) 评论(0) 推荐(0)
摘要:本文使用广度优先搜索算法解决“二叉树的右视图”问题,给出 Jav a代码实现,并分析了时间复杂度和空间复杂度。 阅读全文
posted @ 2025-08-13 23:58 junjunyi 阅读(29) 评论(0) 推荐(0)
摘要:本文主要介绍了滑动时间窗口和固定时间窗口算法各自的特点,和两者之间的区别与使用场景。 阅读全文
posted @ 2025-08-12 23:29 junjunyi 阅读(335) 评论(0) 推荐(0)
摘要:本文分别使用递归法和迭代法的Java代码,实现了查找二叉搜索树中第 K 小的元素的力扣算法题。 阅读全文
posted @ 2025-08-09 12:51 junjunyi 阅读(47) 评论(0) 推荐(0)
摘要:本文使用递归算法,将一个升序数组转换为平衡二叉搜索树,并总结了平衡二叉搜索树的特点 阅读全文
posted @ 2025-08-08 23:26 junjunyi 阅读(63) 评论(0) 推荐(0)