全部类别

算法思想6

分治、动态规划、贪心和回溯等组织求解过程的方法。

每一步按当前规则选择局部最优决策。

取决于选择与更新所用结构

可证明局部选择性质的优化,或有明确边界的启发式。

回溯与剪枝Backtracking

探索候选解,遇到不可能的分支时回退。

取决于搜索树,可能达到指数或阶乘级

约束求解、组合搜索与模式枚举。

分治Divide and conquer

把问题分成较小子问题,分别求解并组合结果。

由子问题数量、规模及合并成本决定
双指针Two pointers

协调两个位置,利用顺序或单调性避免重复扫描。

单向移动且每元素访问有限次时常为 O(n)O(n)

有序合并、区间扫描与成对查找。

滑动窗口Sliding window

维护连续窗口及其摘要,随着边界变化增量更新。

边界单向推进、更新 O(1)O(1) 时总计 O(n)O(n)

连续子序列、流式聚合与局部条件匹配。

6 个概念