public class quickSort {
public static void QuickSort(int[] a, int left, int right) {
if(left>right){
return;
}
int key=a[left];
int i=left;
int j=right;
while(i!=j){
while(i<j && a[j]>=key){
j--;
}
while(i<j &&a[i]<=key){
i++;
}
if(i<j){
int tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
a[left]=a[i];
a[i]=key;
QuickSort(a,left,i-1);
QuickSort(a,i+1,right);
}
//main方法中将数组传入排序方法中处理,之后打印新的数组
public static void main(String[] stra) {
int[] a = {7, 10, 3, 5, 4, 6, 2, 8, 1, 9};
QuickSort(a, 0, a.length-1);
for (int i = 0; i < a.length; i++)
System.out.println(a[i]);
}
}
堆排序