
简介
该用户还未填写简介
擅长的技术栈
未填写擅长的技术栈
可提供的服务
暂无可提供的服务
LeetCode算法日记 - Day 53: 验证二叉搜索树、二叉搜索树的第K小元素
本文介绍了二叉搜索树的两个经典问题及解法。第一部分讲解如何验证二叉树是否为二叉搜索树,通过维护节点值区间(low,high),递归检查每个节点是否满足严格区间约束,使用long类型避免边界值问题,时间复杂度O(n)。第二部分解决查找第k小元素问题,利用中序遍历特性,通过计数器remain在遍历过程中提前终止,时间复杂度O(h+k)。两问题均采用递归解法,并分析了可能出现的边界情况和优化空间。

[JavaEE] 浅谈线程池、自实现阻塞队列
本文介绍了线程池和阻塞队列的核心概念。线程池通过复用线程提高性能,包含核心线程数、最大线程数等参数配置,Java标准库提供了多种线程池实现方式。阻塞队列是具有线程安全特性的特殊队列,支持生产者消费者模型,能有效解耦系统组件。文章还分析了Java标准库中的BlockingQueue接口及其实现,并给出了一个基于循环队列的自实现阻塞队列示例,使用synchronized和wait/notify机制实现

LeetCode算法日记 - Day 10: x 的平方根、搜索插入位置
本文解析了两个二分查找算法问题:1.x的平方根问题要求计算非负整数x的算术平方根并向下取整,通过二分查找确定满足r²≤x的最大整数r,注意处理计算过程中的整数溢出问题。2.搜索插入位置问题要求在有序数组中查找目标值或应插入位置,通过寻找第一个大于等于目标值的元素索引来确定位置,时间复杂度为O(logn)。两个问题都利用了二分查找的核心思想,通过维护查找区间和调整边界条件来高效求解。

到底了