99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2021-02-28 閱讀量: 783
快速排序原理

排序原理:

1.首先設(shè)定一個(gè)分界值,通過該分界值將數(shù)組分成左右兩部分;

2.將大于或等于分界值的數(shù)據(jù)放到到數(shù)組右邊,小于分界值的數(shù)據(jù)放到數(shù)組的左邊。此時(shí)左邊部分中各元素都小于

或等于分界值,而右邊部分中各元素都大于或等于分界值;

FileInputStream("reverse_merge_shell.txt"))); String line=null; while((line=reader.readLine())!=null){ //把每一個(gè)數(shù)字存入到集合中 list.add(Integer.valueOf(line)); }reader.close(); //把集合轉(zhuǎn)換成數(shù)組 Integer[] arr = new Integer[list.size()]; list.toArray(arr); // testMerge(arr);//使用歸并排序耗時(shí):1200 testShell(arr);//使用希爾排序耗時(shí):1277 }public static void testMerge(Integer[] arr){ //使用插入排序完成測試 long start = System.currentTimeMillis(); Merge.sort(arr); long end= System.currentTimeMillis(); System.out.println("使用歸并排序耗時(shí):"+(end-start)); }public static void testShell(Integer[] arr){ //使用希爾排序完成測試 long start = System.currentTimeMillis(); Shell.sort(arr); long end = System.currentTimeMillis(); System.out.println("使用希爾排序耗時(shí):"+(end-start)); } } 67891011121314151617181920212223242526272829303132333435

北京市昌平區(qū)建材城西路金燕龍辦公樓一層 電話:400-618-9090

類名 Quick

構(gòu)造

方法 Quick():創(chuàng)建Quick對象

成員

方法

1.public static void sort(Comparable[] a):對數(shù)組內(nèi)的元素進(jìn)行排序

2.private static void sort(Comparable[] a, int lo, int hi):對數(shù)組a中從索引lo到索引hi之間的元素

進(jìn)行排序

3.public static int partition(Comparable[] a,int lo,int hi):對數(shù)組a中,從索引 lo到索引 hi之間的元

素進(jìn)行分組,并返回分組界限對應(yīng)的索引

4.private static boolean less(Comparable v,Comparable w):判斷v是否小于w

5.private static void exch(Comparable[] a,int i,int j):交換a數(shù)組中,索引i和索引j處的值

3.然后,左邊和右邊的數(shù)據(jù)可以獨(dú)立排序。對于左側(cè)的數(shù)組數(shù)據(jù),又可以取一個(gè)分界值,將該部分?jǐn)?shù)據(jù)分成左右兩

部分,同樣在左邊放置較小值,右邊放置較大值。右側(cè)的數(shù)組數(shù)據(jù)也可以做類似處理。

4.重復(fù)上述過程,可以看出,這是一個(gè)遞歸定義。通過遞歸將左側(cè)部分排好序后,再遞歸排好右側(cè)部分的順序。當(dāng)

左側(cè)和右側(cè)兩個(gè)部分的數(shù)據(jù)排完序后,整個(gè)數(shù)組的排序也就完成了。


52.1739
0
關(guān)注作者
收藏
評論(0)

發(fā)表評論

暫無數(shù)據(jù)
推薦帖子