分治算法面试题23 题
- 01 如何用分治法求「多数元素」(出现次数超过一半的元素)?
- 02 什么是分治算法?分治的三个步骤和适用条件是什么?
- 03 根据前序和中序遍历构造二叉树,为什么天然是分治?
- 04 归并排序为什么是典型分治算法?稳定性和复杂度怎么分析?
- 05 快速幂是什么?如何在 O(log n) 时间内计算 x 的 n 次方?
- 06 快速排序的 partition 为什么是分治关键?如何避免退化?
- 07 快速选择(Quickselect)是什么?如何平均 O(n) 找第 K 大元素?
- 08 链表排序为什么常用归并排序?快慢指针如何拆分链表?
- 09 如何合并 K 个有序链表?为什么分治比逐个合并快?
- 10 如何用分治法求最大子数组和?和 Kadane 算法比怎么样?
- 11 如何用归并排序在 O(n log n) 时间内求数组的逆序对数量?
- 12 为运算表达式设计优先级为什么可以用分治?如何避免重复计算?
- 13 主定理(Master Theorem)是什么?如何用它分析分治算法的复杂度?
- 14 区间和的个数为什么可以用前缀和 + 归并排序统计?(LeetCode 327)
- 15 如何用归并排序统计右侧小于当前元素的个数?(LeetCode 315)
- 16 有序数组转高度平衡 BST 为什么用分治选中点?
- 17 模幂运算为什么用分治快速幂?如何避免中间结果溢出?
- 18 最大二叉树为什么可以用分治构造?如何优化找最大值?
- 19 大整数乘法如何优化?Karatsuba 分治为什么比 O(n²) 快?
- 20 平面最近点对问题:如何用分治在 O(n log n) 时间求最近的两点?
- 21 漂亮数组为什么可以用分治构造?奇偶变换如何保持性质?
- 22 天际线问题如何用分治合并轮廓?和扫描线有什么区别?
- 23 Strassen 矩阵乘法体现了什么分治思想?为什么能少做一次乘法?
没有符合条件的题目。