5種排序算法課件_第1頁
5種排序算法課件_第2頁
5種排序算法課件_第3頁
5種排序算法課件_第4頁
5種排序算法課件_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

常用的5種排序算法常用的5種排序算法1.冒泡排序簡介:冒泡排序(BUBBLESORT),是一種計算機領(lǐng)域領(lǐng)域的較簡單的排序算法。它重復(fù)地走訪過要排序的數(shù)列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數(shù)列的工作是重復(fù)地進行直到?jīng)]有再需要交換,也就是說該數(shù)列已經(jīng)排序完成。1.冒泡排序簡介:冒泡排序(BUBBLESORT),是一種冒泡排序原理:比較相鄰的元素,將小的放到前面,(每一輪找出數(shù)組中最大的放在后面,后面排好序的數(shù)組元素不參與下輪排序)下面將數(shù)組[7,8,5,1,3]里面的元素進行排序。785131.1:785137和8進行比較,因為7<8所以2個元素的位置不變

2.1:571381.3:751838和1進行比較,因為8>1所以2個元素的位置互換

1.4:75138同理,8和3互換位置,得到最大數(shù)8,并且不參與下一輪排序

1.2:758138和5進行比較,因為8>5所以2個元素的位置互換

...同理第二輪排序得到最大數(shù)是7,放在最后,依次得到每一輪的最大值,這樣小的數(shù)就在前面,大的數(shù)放在后面,最后得到所要的數(shù)組[1,3,5,7,8]。冒泡排序原理:比較相鄰的元素,將小的放到前面,(每一輪找出數(shù)1.選擇排序簡介:將數(shù)組中每個元素與第一個元素比較,如果這個元素小于第一個元素,則交換這兩個元素。1.選擇排序簡介:將數(shù)組中每個元素與第一個元素比較,如果這個原理:1.將數(shù)組中每個元素與第一個元素比較,如果這個元素小于第一個元素,則交換這兩個元素 2.循環(huán)第1條規(guī)則,找出最小元素,放于第1個位置 3.經(jīng)過n-1輪比較完成排序527381.1:257382<5,所以2和5互換位置1.3:25738

1.4:25738第一輪得出最小的元素為”2”1.2:257387>2,所以2個元素位置不變同理第三輪排序得到該輪最小數(shù)是5,放在第三個位置,依次得到每一輪的最小值,這樣小的數(shù)就在前面,大的數(shù)放在后面,最后得到所要的數(shù)組[2,3,5,7,8]。2.1:25738第二輪從5的位置開始比較,7>5,位置不變2.2:237583<5,位置互換2.3:23758 8>3,位置不變2.4:23758第二輪排序結(jié)束得到該輪最小值”3”原理:1.將數(shù)組中每個元素與第一個元素比較,如果這個元素小于1.插入排序簡介:將數(shù)組分為兩部分,將后部分的第一個逐一與前部分每一個元素比較,在合理位置插入。1.插入排序簡介:將數(shù)組分為兩部分,將后部分的第一個逐一與原理: 1.將數(shù)組分為兩部分,將后部分的第一個逐一與前部分每一個元素比較,在合 理位置插入 2.插入排序算法效率要高于選擇排序和冒泡排序78513將數(shù)組分為7和8,5,1,3兩部分1:785138>7,所以位置不變3:157831<8&&1<7&&1<5,所以1放到5,7,8的前面4:13578將3依次和前面元素比較,得到3<5,1>3,所以3在1和5之間,結(jié)束2:578135<8&&5<7,所以5放到7和8的前面這樣我們發(fā)現(xiàn),插入排序速度要比冒泡排序和選擇排序快很多原理: 1.將數(shù)組分為兩部分,將后部分的第一個逐一與前部分1.快速排序簡介:先從數(shù)據(jù)序列中選一個元素,并將序列中所有比該元素小的元素都放到它的右邊或左邊,再對左右兩邊分別用同樣的方法處之直到每一個待處理的序列的長度為1,處理結(jié)束。1.快速排序簡介:先從數(shù)據(jù)序列中選一個元素,并將序列中所有比原理:通過一趟排序?qū)⒁判虻臄?shù)據(jù)分割成獨立的兩部分,其中一部分的所有數(shù)據(jù)都比另外一部分的所有數(shù)據(jù)都要小,然后再按此方法對這兩部分數(shù)據(jù)分別進行快速排序,整個排序過程可以遞歸進行,以此達到整個數(shù)據(jù)變成有序序列。4785109312111:選10位一個基準數(shù),進行第一次排序,小于10的放左邊,大于10的放右邊,得到新的數(shù)組[4,7,8,5,9,3,10,12,11],以10為基準分成左右2部分,[4,7,8,5,9,3],10,[12,11],兩邊數(shù)組分別進行快速排序,以數(shù)組第一個元素作為基準進行排序。當前數(shù)據(jù)為[4,7,8,5,9,3],10,[12,11]2:[4,7,8,5,9,3]以第一個元素4作為基準排序得到[3,4,5,7,8,9];后面的數(shù)組為[11,12],結(jié)束。當前數(shù)據(jù)為[3],4,[5,7,8,9],10,11,12,因為3為單個的,所以[3]不需再進行排序,目前只需對[5,7,8,9]進行處理3:[5,7,8,9],以第一個元素5作為基準排序,得到5,[,7,8,9]當前數(shù)據(jù)為3,4,5,[7,8,9],10,11,124:類似步驟3,分別把7,8,9給獨立出來,最終得到數(shù)據(jù)3,4,5,7,8,9,10,11,12原理:通過一趟排序?qū)⒁判虻臄?shù)據(jù)分割成獨立的兩部分,其中一部1.桶子排序簡介:依次進行個位、十位、百位…的比較和排序,得到最后的結(jié)果。1.桶子排序簡介:依次進行個位、十位、百位…的比較和排序,得原理:依次進行個位、十位、百位…的比較和排序,得到最后的結(jié)果。211081312350101212313,12345567889個位依次從上至下排序,得到10,21,13,123,5,805,8110,13221,123313456789十位依次從上至下排序,得到5,8,10,13,21,12305,8,10,13,21

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論