- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 分治法与递归式求解
第二章 分治法与递归式求解;本讲主要通过以下内容讨论递归式的求解方法:
1. Merge Sort(归并排序)
2. Solving Recurrences(求解递归式)
3. The Master Theorem(主定理)
4. HeapSort(堆排序);重点:Merge Sort(归并排序)算法的思想及其时间复杂度的表示及递归式的求解方法、The Master Theorem(主定理)
、HeapSort(堆排序)算法的复杂度分析。
难点:主定理及堆排序算法的复杂度分析。;1. 理解归并排序的主要思想,掌握归并排序算法的时间复杂度表示;
2. 掌握求解递归式的几种常用方法;
3. 理解主定理的思想及应用场合;
4. 理解堆排序的主要思想及算法的复杂度分析方法。;复习: 渐近记号;其它的渐近记号;合并排序;30 10 40 20 60 50;;;;;;;;;;;;;合并排序算法分析;递归式;递归式例子;求解递归式的方法;替换法
也称为 “猜测法”
先猜测答案, 然后用归纳法进行证明
例如:
T(n) = 2T(n/2) + ?(n) ? T(n) = ?(n lg n)
T(n) = 2T(?n/2?) + n ? ???;T(n) = 2T(n/2) + ?(n) ? T(n) = ?(n lg n)
T(n) = 2T(?n/2?) + n ? T(n) = ?(n lg n)
T(n) = 2T(?n/2? + 17) + n ? ???;T(n) = 2T(n/2) + ?(n) ? T(n) = ?(n lg n)
T(n) = 2T(?n/2?) + n ? T(n) = ?(n lg n)
T(n) = 2T(?n/2?+ 17) + n ? ?(n lg n);迭代法
展开递归式
进行若干步代数运算
求和
例如 ;s(n) =
c + s(n-1)
c + c + s(n-2)
2c + s(n-2)
2c + c + s(n-3)
3c + s(n-3)
…
kc + s(n-k) = ck + s(n-k);对于 n = k, 可得
s(n) = ck + s(n-k)
当 k = n时,
s(n) = cn + s(0) = cn;
s(n) = cn;s(n)
= n + s(n-1)
= n + n-1 + s(n-2)
= n + n-1 + n-2 + s(n-3)
= n + n-1 + n-2 + n-3 + s(n-4)
= …
= n + n-1 + n-2 + n-3 + … + n-(k-1) + s(n-k)
;s(n)
= n + s(n-1)
= n + n-1 + s(n-2)
= n + n-1 + n-2 + s(n-3)
= n + n-1 + n-2 + n-3 + s(n-4)
= …
= n + n-1 + n-2 + n-3 + … + n-(k-1) + s(n-k)
= ;对 n = k;对 n = k
当 k = n?
;对 n = k
当 k = n?
;对 n = k
当 k = n?
一般地 ;T(n) =
2T(n/2) + c
2(2T(n/2/2) + c) + c
22T(n/22) + 3c
22(2T(n/22/2) + c) + 3c
23T(n/23) + 4c + 3c
23T(n/23) + 7c
23(2T(n/23/2) + c) + 7c
24T(n/24) + 15c
…
2kT(n/2k) + (2k - 1)c
;对 n 2k
T(n) = 2kT(n/2k) + (2k - 1)c
如果 k = lg n?
T(n) = 2lg n T(n/2lg n) + (2lg n - 1)c
= n T(n/n) + (n - 1)c
= n T(1) + (n-1)c
= nc + (n-1)c = (2n - 1)c;另一个例子;T(n) =
aT(n/b) + cn
a(aT(n/b/b) + cn/b) + cn
a2T(n/b2) + cna/b + cn
a2T(n/b2) + cn(a/b + 1)
a2(aT(n/b2/b) + cn/b2) + cn(a/b + 1)
a3T(n/b3) + cn(a2/b2) + cn(a/b + 1)
a3T(n/b3) + cn(a2/b2 + a/b + 1)
…
akT(n/bk) + cn(ak-1/bk-1 + ak-2/bk-2 + … + a2/b2 + a/b + 1);T(n) = akT(n/bk) + cn(ak
您可能关注的文档
最近下载
- 《道路运输管理实务》课件——第五章 特种货物运输业务组织.pptx VIP
- A公司个人所得税纳税筹划案例分析.docx VIP
- 高压供电系统的设计.pdf VIP
- PLC应用技术(西门子S7-1200)全套教学课件.pptx VIP
- 新教材人教版二年级数学上册 第1 单元 分类与整理 第4课时 练一练.pptx VIP
- 装修合同协议书工装.doc VIP
- 人教PEP版五年级上册英语全册教案(6个大单元整体教学设计).pdf VIP
- 一种电子烟挥发性气体检测报警装置.pdf VIP
- 《道路运输管理实务》课件——第四章 零担货物运输业务组织.pptx VIP
- 中职《中华优秀传统文化选讲》 第二讲 璀璨华章——文学经典.pptx VIP
文档评论(0)