求助大佬,后三个RE
查看原帖
求助大佬,后三个RE
517157
CcCcoO0Dding楼主2022/3/5 11:10
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] a = new int[n];
		for(int i=0; i<n; i++)
			a[i]=sc.nextInt();
		QuickSort(a, 0, n-1);
		for(int i=0; i<n; i++)
			System.out.print(a[i]+" ");
	}
	static void swap(int a, int b, int r[]) {
		int t = r[a];
		r[a]=r[b];
		r[b]=t;
	}
	static int Partition(int r[], int first, int end) {
		int i=first, j=end;
		while(i<j) {
			while(i<j && r[i]<=r[j]) 
				j--;
			if(i<j) {
				swap(i, j, r);
				i++;
			}
			while(i<j && r[i]<=r[j]) 
				i++;
			if(i<j) {
				swap(i, j, r);
				j--;
			}
		}
		return i;
		
	}
	
	static void QuickSort(int r[], int first, int end) {
		int pivot;
		if(first<end) {
			pivot=Partition(r, first, end);
			QuickSort(r, first, pivot-1);
			QuickSort(r, pivot+1, end);
		}
	}
}

2022/3/5 11:10
加载中...