[关闭]
@looper1211 2019-05-12T01:21:24.000000Z 字数 543 阅读 1584

主定理 Master Theorem

其实也可以称作:递归算法的复杂度判定定理

基本公式:


数学上的表现形式如下:

直接计为:

其中 并且 是常量,其表示的意义是 n 表示问题的规模,a 表示递归的次数也就是生成的子问题规模数,b 表示每次递归是原来的的规模,表示分解和合并所要花费的时间之和。

解法如下:

分治法举例

1. 归并排序(二路)Merge Sort

分成两个子序列,子序列排序,合并两个子序列


利用主定理公式求解:

2. 二分查找

有序序列中,先和序列中点比较,选择结果的位置,然后再从子序列中查找,并迭代这样的过程


套用Master公式,可得:

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注