分而治之法的设计思想是将一个难以直接解决的大问题分解成若干小规模的相同问题,从而突破每一个问题,对它们进行划分和规则化。
当有以下情况时,可以使用分而治之的思想
1) 如果问题的规模缩小到一定程度时很容易解决;2) 该问题可以分解为几个与原问题相同的小问题;3) 将问题分解的子问题的解合并为问题的解;4) 该问题分解的每个子问题都是相互独立的,即子问题之间不存在公共子问题。
分治法是核心是递归细化问题,降低时间复杂度,从而提高效率。