package com.daelly.algorithm.sort;
public class QuickSort {
public static void quickSort(int[] t, int start, int end) {
if(start>=end)return;
int temp = t[start];
int i = start;
int j = end;
while(i<j) {
while(i<j&&t[j]>temp) {
j--;
}
if(i<j) {
t[i++] = t[j];
}
while(i<j&&t[i]<temp) {
i++;
}
if(i<j) {
t[j--] = t[i];
}
}
assert(i==j);
t[i] = temp;
System.out.println("temp:"+temp+",index:"+i);
displayArray(t);
quickSort(t,start,i-1);
quickSort(t,j+1,end);
}
public static void main(String[] args) {
int[] s = {2,7,9,3,1,35,78,32,12,6,8,43,18,9};
System.out.println("Before:");
displayArray(s);
quickSort(s,0,s.length-1);
System.out.println("Sorted:");
displayArray(s);
}
public static void displayArray(int[] t) {
System.out.print("{");
for (int i = 0; i < t.length; i++) {
if(i!=0)System.out.print(",");
System.out.print(t[i]);
}
System.out.println("}");
}
}
快速排序
最新推荐文章于 2024-09-19 15:57:43 发布