排序演算法 快速排序原理及Java實現

2021-08-20 15:27:53 字數 630 閱讀 2854

**和以前的寫法對比,基準值所在的位置沒必要每次都進行交換,只在一次快排完成後,重新把當前的基準值賦值給現在的index位置就好了。**寫的很強,感謝作者 。
public

class quicksort

i = low;

j = hight;

index = a[i]; // 用子表的第乙個記錄做基準

while (i < j)

a[i] = index;// 將基準數值替換回 a[i]

sort(a, low, i - 1); // 對低子表進行遞迴排序

sort(a, i + 1, hight); // 對高子表進行遞迴排序

}public

static

void

quicksort(int a)

public

static

void

main(string args) ;

quicksort(a);

system.out.println(arrays.tostring(a));

}}

Java排序演算法 快速排序

一.思想 對氣泡排序演算法的一種改進。通過一趟排序將排序的資料分割成兩個部分,其中一部分的所有資料都比另一部分的所有資料都要小,然後再按此方法對這兩部分分別再進行快速排序,依次類推。實現為 開始時先設兩個變數i start,j end 以第乙個元素作為中間點,pivot num i 以j 的形式從後...

java排序演算法 快速排序

陣列 2,6,3,6,5,9,1 輸出 1 2 3 5 6 6 9 private static void paixu int arrs,int h,int e while arrs x arrs e 交換值 int m m arrs h arrs h arrs e arrs e m 2,6,3,6...

排序演算法 選擇排序原理及Java實現

選擇排序是一種簡單直觀的排序演算法,其基本原理如下 對於給定的一組記錄,經過第一輪比較後得到最小的記錄,然後將該記錄的位置與第乙個記錄的位置交換 接著對不包括第乙個記錄以外的其他記錄進行第二次比較,得到最小記錄並與第二個位置記錄交換 重複該過程,知道進行比較的記錄只剩下乙個為止。從簡單選擇排序的過程...