气泡排序法演算法.PPTVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

*二元樹排序法(2/6)原始資料建立二元樹的過程圖82821682916829161695圖9-2-3-5.1*二元樹排序法(3/6)829161695162716751695829161627958291616951627167542829161695162716754269341695167582916162742699575圖9-2-3-5.1*二元樹排序法(4/6)效率:此分類法的效率依各個元素的原始順序而定,若原始陣列完全分類好(或依相反方向排好),則所得到的樹狀成為一個循序右鏈結(或左鏈結),如圖9-2-3-5.2所示。在此情況下,建立樹狀時,插入第一個節點不須比較;插入的第二個結點須比較兩次;插入第三個結點須比較三次…,以此類推,比較次數的總和為:2+3+…+n=[(n*(n+1))/2]-1其效率為O(n2)*二元樹排序法(5/6)效率:原始資料比較次數:141681612161716264圖9-2-3-5.2*二元樹排序法(6/6)效率:若原始陣列的排序結構為第一個元素a,其後大約有一半元素大於a,令一半元素小於a,在此狀況下,所得的二元素之高度d最小,其值大於或等於log(n+1)-1。在二元樹之第X階層的節點數(最後階層除外)為2個,且欲將一元素置於階層(X=0除外)需要X+1次比較。故比較的次數為:之間與可證明比較次數的總和為O(nlogn)。*內部排序法(InternalSort)其它排序合併排序法(MergeSort)計數排序法(CountingSort)基數排序法(RadixSort)*合併排序法(1/7)可被應用去排序一堆沒有排序的資料或將兩個或兩個以上排序好的資料,合併成一個已排序好的資料。可分為遞迴排序法、非遞迴排序法。可分為直接合併法(DirectMergeSort)與自然合併法(NaturalMergeSort)。假設兩個已排序好的資料集合A及B,將其合併後放入空資料集合C,合併的運作方式:每次比較A和B的第一筆資料,將較小的那一筆放入C中。重覆上一步驟,直到A或B其中一個變為空集合。將另一集合剩下的所有資料依序放到C的尾端,則合併完成。*合併排序法(2/7)合併完成後,將資料細分至長度值為1的集合,然後再一一合併,最後得到了一個已經排序好的資料集合,其步驟如下:直接排序法先將資料分成左、右兩個部份集合,再將左半部的資料一分為二,直到資料長度值為1。將第一及第二個子資料集合合併,第三及第四個子資料集合合併,…,以此類推。重覆上一步驟,將合併後的子集合再次兩兩合併。最後,所有的子集合已合併成為一個排序好的資料集合,即排序完成。*合併排序法(3/7)原始資料:首先,將資料分成左、右兩部份:再將左半部劃分,直到長度為1:*合併排序法(4/7)進行比較後,再依小至大的方式排列來進行合併:再將[9527]分成二部份,再進行比較合併:*合併排序法(5/7)再合併[91682][2795],得到經過排序後的左半部:將右半部的資料依左半部資料處理的方式處理得到:合併經處理左、右兩部份*合併排序法(6/7)最後結果*二元插入排序法(1/5)先將一筆資料插入一串有序的資料(ordereddata:依大小做好排列的資料)R1,R2,…,Ri中(R1≤R2≤R3...≤Ri)。一開始將輸入第一筆資料於已預先設定好的陣列長度中的第一位或是最後一位,等待第二筆資料輸入後,與其比較大小,其大小關係影響其陣列排列順序。*二元插入排序法(2/5)第一種排序:將第一筆的資料放在陣列的第一位,此時的這一筆資料在整個一串資料中被當成是最小,下一筆資料和其比較的情形可分為比其大或小。若下一筆資料較大:則將這一筆資料放在整個陣列中的第二位,而最小的指標依然不變。若下一筆資料較小:則將第一筆輸入的資料移到陣列的第二個位置,而第二筆輸入的資料則放在第一個位置,而最小的指標則指向第二筆輸入的資料。若資料數超過三個時則必須一直比下去,直到每筆資料皆比過。但是若遇到前一筆資料比較大時便可停止。*二元插入排序法(3/5)第二種排序:將第一筆的資料放在陣列的最後一位,此時的這一筆資料在整個一串資料中被當成是最大,下一筆資料和其比較的情形可分

文档评论(0)

193****8045 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档