import java.util.Random;
// 快速排序
public class index {
public int sort(int start, int end, Integer[] arr){
int location = start - 1;
Integer standard = arr[end];
for (int i = start; i < end; i++){
if (arr[i] <= standard){
location += 1;
Integer tmp = arr[location];
arr[location] = arr[i];
arr[i] = tmp;
}
}
Integer tmp = arr[location + 1];
arr[location + 1] = arr[end];
arr[end] = tmp;
return location + 1;
}
public void sortiter(int start, int end, Integer[] arr){
if (start < end) {
int location = sort(start, end, arr);
sortiter(start, location - 1, arr);
sortiter(location + 1, end, arr);
}
}
public static void main(String[] args){
Integer[] data = new Integer[10];
for(int i = 0; i < 10; i++){
Random rand = new Random();
data[i] = rand.nextInt(100);
}
for(int i = 0; i < 10; i++){
System.out.print(data[i] + ",");
}
index sort = new index();
sort.sortiter(0, data.length - 1, data);
System.out.println();
for(int i = 0; i < 10; i++){
System.out.print(data[i] + ",");
}
}
}
java快速排序
最新推荐文章于 2024-04-26 16:26:48 发布