为什么合并排序算法时间复杂性T(n)=2T(n/2)+O(n)就会得出T(n)=nlogn
题目
为什么合并排序算法时间复杂性T(n)=2T(n/2)+O(n)就会得出T(n)=nlogn
怎么通过T(n)=2T(n/2)+O(n)得出nlogn的呢,不懂nlogn是怎么来的
答案
画个图:
n
/
n/2 n/2
/ /
n/4 n/4 n/4 n/4
/ / / /
n/8 n/8 n/8 n/8 n/8 n/8 n/8 n/8
树高logn,每层加起来都是n,一共是logn×n
上面是n为2的幂时的特殊情况.对于一般情况,同样可证.
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
热门考点
- wrong parameters!
- 与数学式a=b或a≠c对应的C语言表达式
- 甲数是X,比乙数的3倍多a,乙数是( ) A(X+a)/3 B3X-a C(
- 仰视看量筒读数比实际值小?
- There are two _ over the river.填空,人教版.
- 已知抛物线y=ax的平方-bx+c(a不等于0)与x轴交于点c(0,4),与x轴交于A,B两点,且点A的坐标为(4,0)求表
- 我是2012年海南的考生,今年大概是这样!语文100,英语100,
- 把下面的词语补充完整.顺便解一下那些形容人物动作,那些形容人物神态,那些形容人物精神
- two third 2/3如果加了连字符是不是two—thirds?加了连字符third为什么加了s?一般连字符表示数字,
- 白兔比黑兔多100只,黑兔的只数是白兔的5分之3,白兔和黑兔各几只?(方程解,算术解)