Bare Algo
搜索算法...
Ctrl+K
分治
递归拆分问题规模:归并思想、分治计数、快速选择等。
算法题
(9)
23. 合并 K 个升序链表
困难
给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。
链表
分治
堆
归并排序
912. 排序数组
中等
给你一个整数数组 nums,请你将该数组升序排列。使用归并排序或快速排序实现。
数组
分治
排序
215. 数组中的第K个最大元素
中等
给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。
数组
分治
排序
堆
快速选择
169. 多数元素
简单
给定一个大小为 n 的数组 nums,返回其中的多数元素。多数元素是指在数组中出现次数大于 ⌊n/2⌋ 的元素。
数组
哈希表
分治
排序
计数
53. 最大子数组和
中等
给你一个整数数组 nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
数组
分治
动态规划
241. 为运算表达式设计优先级
中等
给你一个由数字和运算符组成的字符串 expression,按不同优先级组合数字和运算符,计算并返回所有可能组合的结果。
数学
字符串
动态规划
递归
记忆化
932. 漂亮数组
中等
如果长度为 n 的数组 nums 满足对于每个 0 <= i < j < n,都不存在下标 k 使得 i < k < j 且 2*nums[k] == nums[i] + nums[j],则该数组是「漂亮数组」。
数组
数学
分治
215. 数组中的第K个最大元素
中等
暂无描述
493. 翻转对
中等
暂无描述
实际应用
(5)
Web Worker 大数据排序
困难
使用分治思想在 Web Worker 中实现归并排序,将大数组拆分到多个 Worker 并行处理,最终合并结果。
归并排序
性能优化
并行计算
虚拟列表二分定位
中等
在不定高度的虚拟列表中,使用二分查找快速定位滚动位置对应的起始项索引,实现 O(log N) 的滚动性能。
二分查找
虚拟列表
滚动优化
大文件分片并行上传
中等
将大文件分割成多个分片并行上传,通过分治策略提高上传效率并支持断点续传。
分治
并发控制
文件上传
网络传输
Canvas 四叉树空间分割
困难
在大规模 2D 场景中使用四叉树进行空间分割,加速点击检测、碰撞查询等操作。
四叉树
游戏开发
图形渲染
表达式解析器
中等
使用分治递归解析数学表达式(如公式编辑器),支持括号嵌套和运算优先级。
递归下降分治
编辑器
表达式计算