//快速排序
public class quacksort
int pivot = arr[low]; // 取第乙個數作為中間數
// 左滑塊當前的下標數,從第二個數字開始,從最後乙個開始
int left = low + 1;
int right = high; // 右滑塊當前的下標數
while (left < right)
// 從右邊開始找
while (left <= right && right > low)
if (left < right)// 如果還沒找完,則交換數字
swap(arr, right, left);
}swap(arr, low, right);// 交換中間數字
sort(arr, low, right);// 排序前面陣列
sort(arr, right + 1, high);// 排序後邊陣列
}// 交換位置
private static void swap(int array, int i, int j)
// 列印方法
private static void print(int a)
system.out.println(); // 換行
}// 主方法
public static void main(string args) ;// 定義陣列
print(a); // 列印之前的序列
sort(a, 0, a.length - 1); // 排序
print(a); // 列印排序後的結果}}
java 快速排序
public class myquicksort while strvoid middle strvoid low lowif low hight else if hight middle temp strvoid hight strvoid hight strvoid low strvoid lo...
快速排序(java)
快速排序 public class quacksort int pivot arr low 取第乙個數作為中間數 左滑塊當前的下標數,從第二個數字開始,從最後乙個開始 int left low 1 int right high 右滑塊當前的下標數 while left right 從右邊開始找 wh...
快速排序(Java)
快速排序的思想是基於分治法加上遞迴思想,排序陣列時,將陣列分成兩個小部分,然後對它們遞迴排序,直到它們都不可再分為止。快速排序的平均執行時間是o nlog n 遠比插入排序的o n 2 時間小。快速排序 param arr param start param end return private s...