分治算法的核心思想

核心观点

分治算法把原问题拆成若干个规模更小的同类子问题,分别求解后再合并成原问题的解。

分治真正省下的不是代码量,而是每一层需要处理的规模:拆分、求解、合并三步的成本都必须低于直接求解原问题,这套结构才成立。子问题必须与原问题同构,否则无法递归;合并如果比求解本身还重,分治就只剩下形式。

知识连接