java實現的排序演算法總結

2021-08-17 11:02:15 字數 712 閱讀 6601

網上查了好多資料,不同排序演算法的實現可能有多種,但網上有一些放到**中無法執行,各種錯誤,並且有些並不是最優演算法,以下為本人整理的比較靠譜的**:

1 快速排序:

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); // 對高子表進行遞迴排序

} python快速排序;

2 氣泡排序:

public void sort(int arr) }

system.out.println(arr); }

3 簡單插入排序

public class insertsort

a[j + 1] = insertnote;// 直到要插入的元素不小於第j個元素,將insertnote插入到陣列中 }

}4 選擇排序:

public static void selectsort(int a)

for (int i = 0; i < a.length; i++) }

if (flag != i) }

}

排序演算法總結(java實現)

排序演算法的分類如下 1.插入排序 直接插入排序 折半插入排序 希爾排序 2.交換排序 冒泡泡排序 快速排序 3.選擇排序 直接選擇排序 堆排序 4.歸併排序 5.基數排序。關於排序方法的選擇 1 若n較小 如n 50 可採用直接插入或直接選擇排序。當記錄規模較小時,直接插入排序較好 否則因為直接選...

常見的排序演算法總結(JAVA實現)

插入排序 直接插入排序 希爾排序。選擇排序 直接選擇排序 堆排序。交換排序 氣泡排序 快速排序。歸併排序。基數排序。思路 對於一組資料,先將第乙個和第二個數排序,再將第三個數插入之前已經有序序列中形成新的有序序列,以此類推。也就是對於第n個數的排序,是將這第n個數插入到前n 1個數的有序序列中,從而...

排序演算法總結及java實現

十種排序演算法的基本特性 排序演算法 平均時間複雜度 最好情況 最壞情況 空間複雜度 排序方式 穩定性快速排序 nlogn nlogn n2 logn in place 不穩定歸併排序 nlogn nlogn nlogn n out place 穩定堆排序 nlogn nlogn nlogn 1 i...