




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1.快速排序通過(guò)一趟排序?qū)⒁判虻臄?shù)據(jù)分割成獨(dú)立的兩部分,其中一部分的所有數(shù)據(jù)都比另外一部分的所有數(shù)據(jù)都要小,然后再按此方法對(duì)這兩部分?jǐn)?shù)據(jù)分別進(jìn)行快速排序,整個(gè)排序過(guò)程可以遞歸進(jìn)行,以此達(dá)到整個(gè)數(shù)據(jù)變成有序序列。/* Created by adrian on 2015/1/25.* 快速排序:通過(guò)一趟排序?qū)⒁判虻臄?shù)據(jù)分割成獨(dú)立的兩部分,其中一部分的所有數(shù)據(jù)都比另外一部分的所有數(shù)據(jù)都要小* ,然后再按此方法對(duì)這兩部分?jǐn)?shù)據(jù)分別進(jìn)行快速排序,整個(gè)排序過(guò)程可以遞歸進(jìn)行,以此達(dá)到整個(gè)數(shù)據(jù)變成有序序列。*/public class QuickSort / 初始化數(shù)組public static void
2、init(int array Random random = new Random(;for (int i = 0; i array.length; i+arrayi = random.nextInt(1000;/ 打印數(shù)組public static void display(int array for (int i = 0; i = hightreturn;/ 比較值int key = arraylow;/ 原始下標(biāo)int low_index = low, hight_index = hight;while (low hight / 如果低位下標(biāo)小于高位下標(biāo)并且高位值不小于比較值while
3、(low = keyhight-;/ 符合條件的值(小于比較值被移到key的左邊arraylow = arrayhight;/ 如果低位下標(biāo)小于高位下標(biāo)并且低位值不大于比較值while (low hight & arraylow = keylow+;/ 符合條件的值(大于比較值被移到key的右邊arrayhight = arraylow;/ key值位置(此時(shí)的結(jié)果是low=hightarraylow = key;/ 遞歸左邊部分quick(array, low_index, low - 1;/ 遞歸右邊部分quick(array, low + 1, hight_index;/ 測(cè)試publi
4、c static void main(String args int array = new int100;init(array;display(array;quick(array, 0, array.length - 1;display(array;2.希爾排序希爾排序是按照不同步長(zhǎng)對(duì)元素進(jìn)行插入排序,當(dāng)剛開(kāi)始元素很無(wú)序的時(shí)候,步長(zhǎng)最大,所以插入排序的元素個(gè)數(shù)很少,速度很快;當(dāng)元素基本有序了,步長(zhǎng)很小,插入排序?qū)τ谟行虻男蛄行屎芨摺?* Created by adrian on 2015/1/25.* 希爾排序:按照不同步長(zhǎng)對(duì)元素進(jìn)行插入排序,當(dāng)剛開(kāi)始元素很無(wú)序的時(shí)候,步長(zhǎng)最大,所以插入排
5、序的元素個(gè)數(shù)很少* ,速度很快;當(dāng)元素基本有序了,步長(zhǎng)很小,插入排序?qū)τ谟行虻男蛄行屎芨摺?/public class ShellSort / 初始化數(shù)組public static void init(int array Random random = new Random(;for (int i = 0; i array.length; i+arrayi = random.nextInt(1000;/ 打印數(shù)組public static void display(int array for (int i = 0; i array.length; i+ / 換行if (i + 1 % 10
6、= 0/* 對(duì)每個(gè)步長(zhǎng)增量序列排序* param array* 數(shù)組* param d* 步長(zhǎng)* param begainIndex* 第一個(gè)排序下標(biāo)*/private static void insert(int array, int d, int begainIndex for (int i = begainIndex + d; i array.length; i += d for (int j = begainIndex; j i; j += d if (arrayi j; k -= d arrayk = arrayk - d;arrayj = tempValue;/* param ar
7、ray* 數(shù)組*/public static void shell(int array / 步長(zhǎng)int d = array.length 1;while (d = 1 / 對(duì)每個(gè)步長(zhǎng)增量序列排序for (int i = 0; i = 1;/ 測(cè)試public static void main(String args int array = new int100;init(array;display(array;shell(array;display(array;3.歸并排序合并排序法是將兩個(gè)(或兩個(gè)以上有序表合并成一個(gè)新的有序表,即把待排序序列分為若干個(gè)子序列,每個(gè)子序列是有序的。然后再把有序
8、子序列合并為整體有序序列。/* Created by adrian on 2015/1/26.* 歸并排序:首先是根據(jù)元素構(gòu)建堆。然后將堆的根節(jié)點(diǎn)取出(一般是與最好一個(gè)節(jié)點(diǎn)進(jìn)行交換,將前面len* -1個(gè)節(jié)點(diǎn)繼續(xù)進(jìn)行堆調(diào)整的過(guò)程,然后再將根節(jié)點(diǎn)取出,這樣一直到所有節(jié)點(diǎn)都取出*/public class MergeSort / 初始化數(shù)組public static void init(int array Random random = new Random(;for (int i = 0; i array.length; i+arrayi = random.nextInt(1000;/ 打印數(shù)組
9、public static void display(int array for (int i = 0; i 1; if (len 1 int leftArray = Arrays.copyOfRange(array, 0, middle; int rightArray = Arrays.copyOfRange(array, middle, len; mergeSort(leftArray; mergeSort(rightArray; merge(array, leftArray, rightArray; / 合并數(shù)組,升序 private static void merge(int result, int left, int right int i = 0, l = 0, r = 0; while (l left.length & r right.length if (leftl rightr resulti = leftl; i+; l+; else re
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國(guó)離子刻蝕機(jī)市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)電子鎮(zhèn)流器多點(diǎn)溫度巡檢儀市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)油壓熱壓整形機(jī)市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)枸杞提取物市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)射流式深井自動(dòng)泵市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)衛(wèi)生消毒用品市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國(guó)乳品加工罐市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 機(jī)電專業(yè)培訓(xùn)
- 幼兒園消毒液培訓(xùn)
- 角膜白斑護(hù)理查房
- C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知到智慧樹(shù)期末考試答案題庫(kù)2025年石河子大學(xué)
- 黨建考試試題及答案國(guó)企
- 小學(xué)圖書館面試題及答案
- 客運(yùn)行業(yè)事故隱患內(nèi)部報(bào)告獎(jiǎng)勵(lì)管理制度2025
- 快消品包裝2025年可再生資源利用現(xiàn)狀與前景報(bào)告
- 子公司投資協(xié)議書
- 縱隔腫物護(hù)理
- 房屋建筑與市政工程重大事故安全隱患判定標(biāo)準(zhǔn)解讀課件
- DB43-T 1267-2023 機(jī)動(dòng)車檢驗(yàn)機(jī)構(gòu)建設(shè)和運(yùn)行管理規(guī)范
- 公司稅務(wù)注銷協(xié)議書
- 2025年人力資源管理專業(yè)期末考試卷及答案
評(píng)論
0/150
提交評(píng)論