递归问题 用Master公式推导 时间复杂度

gong公式:

T(N) = a * T(N/b) + O(N^d)

其中(abd都是常数)

 

N:入参,输入集合

a:调用子函数的次数

b:调用子函数的规模

d:除子递归外的常数操作,没有为0,如果有N次为1 如果有N^2 次 为2 

 

用法:

  只要是递归的子函数的规模是一致的,都可以使用Master公式推时间复杂度 

 

推导时间复杂度公式:

  1. log b a  >d  O(N log b a)

       2. log b a  <d  O(N ^ d)

  3. log b a  =d  O(N ^ d * log N)

 

例子:

  求数组arr中的最大数,用递归实现

来源:左程云 快进到 1:46:20

 https://www.aliyundrive.com/s/dEkoT5DD8Uh 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

 

posted @ 2023-03-28 22:17  Minde  阅读(24)  评论(0编辑  收藏  举报