利用快速排序算法将读入的 n 个数从小到大排序后输出。JAVA
时间: 2023-07-06 10:33:32 浏览: 73
好的,以下是利用快速排序算法将读入的 n 个数从小到大排序并输出的JAVA代码:
```java
import java.util.Scanner;
public class QuickSort {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("输入要排序的数的个数:");
int n = sc.nextInt();
int[] arr = new int[n];
System.out.print("输入要排序的数:");
for(int i = 0; i < n; i++){
arr[i] = sc.nextInt();
}
quickSort(arr, 0, n-1);
System.out.print("排序后的结果:");
for(int i = 0; i < n; i++){
System.out.print(arr[i] + " ");
}
}
public static void quickSort(int[] arr, int left, int right){
if(left < right){
int pivot = partition(arr, left, right);
quickSort(arr, left, pivot-1);
quickSort(arr, pivot+1, right);
}
}
public static int partition(int[] arr, int left, int right){
int pivot = arr[left];
while(left < right){
while(left < right && arr[right] >= pivot) right--;
arr[left] = arr[right];
while(left < right && arr[left] <= pivot) left++;
arr[right] = arr[left];
}
arr[left] = pivot;
return left;
}
}
```
输入示例:
```
输入要排序的数的个数:6
输入要排序的数:9 1 5 8 3 7
```
输出示例:
```
排序后的结果:1 3 5 7 8 9
```
阅读全文