- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 演算法 _ 第二章 2-* 插入排序 * 演算法 _ 第二章 2-* 插入排序 * 演算法 _ 第二章 2-* 插入排序 第 5 行至第 8 行的內迴圈在最好的情況下只需要做 1 次的比對運算就知道 a [j] 的插入位置 在最差的情況下需要做 j-1 次的比較運算後才能把 a [j] 插入到適當的位置 平均起來需要做 (j-1)/2 次的比較運算後才能把 a [j] 插入到適當的位置 * 演算法 _ 第二章 2-* 插入排序 B(n) = ?j=2,n(1) = O(n) W(n) = ? j=2,n (j-1) = 1 + 2 + … + n-2 + n-1 = (n-l)n/2 = O(n2) A(n) = ? j=2,n (j-1)/2= (1 + 2 + … + n-2 + n-1)/2 = (n-l)n/4 = O(n2) * 演算法 _ 第二章 * 演算法之最佳化與問題之複雜度 * 演算法 _ 第二章 2-* 最佳化的演算法 憑什麼說某一個演算法是所有可能用來解相同問題的演算法中最好的一個? “最佳的”指的不是“已知中最好的”;而是“所有可能中最好的” 問題的複雜度 * 演算法 _ 第二章 2-* 我們可以搜尋、排序得多快? 證明解一個問題所需要的最少運算量 要找出一個好的演算法,我們必須做兩件事: 找出解決該問題的下限,L(n),其中n代表輸入的大小 發展或找出一個高效率演算法A,並且分析它的最壞情況複雜度,W(n) 如果W(n) = L(n),則我們說A是一個最佳化的演算法 否則,我們可能可以發展出更好的演算法,或者找出更好的問題下限,或者兩者都可以 * 演算法 _ 第二章 2-* 問題的複雜度下限 為了確定一個問題的複雜度下限為?(g(n)),我們必須證明: 「解決該問題的每一個可能演算法它們的複雜度都是?(g(n))。」 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 5 個元素序列的循序搜尋之決策樹 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 8 個元素序列的二元搜尋之決策樹 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 如果一棵樹有 n 個頂點,那麼這棵樹的高度必然大於等於 ?log2 n? 其中當樹本身是平衡樹時其高度等於 ?log2 n? * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 3 個元素序列的排序之決策樹 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 樹葉代表著最後的可能結果,即 n 個元素的各種排列情況 總共有 n! 種排列情況 因此如果決策樹的樹葉數目是 p 的話,那麼 p ? n! 最壞的情況指的是樹的高度 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 但是,我們知道如果樹的高度是 d,那麼p ? 2d,即 log2 p ? d 或者由於 p 是整數,我們可以寫成 d = ?log2p? 我們得到 d = ?log2 p? ? ?log2 n!? * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 史特林(Stirling)的近似公式: 因此 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 換句話說,任何一個排序演算法,只要它的基本運算是兩個值的比較,那麼它的計算複雜度在最壞的情況下至少需要大約 n log n 次的比較 換句話說,排序問題的計算複雜度在最壞的情況下至少需要 ?(n log n) 次的比較 * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 但是,合併排序演算法的最壞情況複雜度便是 O(n log n) 因此我們說合併排序演算法是一個最佳化的排序演算法 ?(n log n) 已經是最佳化的下限了 排序問題的平均情況計算複雜度下限也是 ?(n log n) * 演算法 _ 第二章 2-* 決策樹與一些問題的下限分析 劣幣問題的計算複雜度下限 xiH 代表 xi 是劣幣而且它比真幣重、xiL代表 xi 是劣幣而且它比真幣輕 平衡樹高度是?log3 64? = 4 這意味著這個問題的下限是4,至少需要使用4次天秤 * 演算法 _ 第二章 2-* 利用奇蹟來分析問題的複雜度下限 給定兩個已經排序過的序列 A[1:m] 與 B[1:n],我們想知道的是將這兩個序列合併成一個排序過的序列,在最壞的情況下,至少需要多少次的比較運算 * 演算法 _ 第二章 2-* 利用奇蹟來分析問題的複雜度下限 * 演算法 _ 第二章 2-* 利用奇蹟來分析問題的複雜度下限 採用決
您可能关注的文档
最近下载
- 《趣味的手工创意--向日葵》-美术课件.ppt VIP
- 派出所民警先进事迹材料三篇 .doc VIP
- VIVITEK丽讯RU76953使用说明书.pdf VIP
- 原调正谱bE边疆的泉水清又纯钢琴伴奏联考.pdf VIP
- 泳池工程施工设计方案(3篇).docx VIP
- 少儿水粉 玫瑰庄园—美术课件.pptx VIP
- (一模)贵阳市2025年高三年级适应性考试(一)地理试卷(含官方答案).docx
- 《模型构建在高中生物教学中的应用研究》课题研究方案.doc
- 精品解析:四川省成都市武侯区2024-2025学年上学期八年级期末考试数学试题(原卷版).docx VIP
- 苏J9508室外工程-标准设计图集.pdf VIP
文档评论(0)