import java.util.Scanner;
public class Main {
private static void quicksort(int[] array,int low,int high){
int left = low;
int right = high;
int temp = array[low]; //基准
int t;
if(left>right){
return;
}
while(right>left){
while (temp <= array[right] && left < right){ //从右边找到一个小于基准的数
right--;
}
while (temp >= array[left] && left < right){ //从左边找到一个大于于基准的数
left++;
}
if(left < right){
t = array[left];
array[left] = array[right];
array[right] = t;
}
}
array[low] = array[left];
array[left] = temp;
quicksort(array,low,right-1);
quicksort(array,left+1,high);
}
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] a = new int[n+1];
long count = 0;
for(int i = 0;i < n; i++){
a[i]=scanner.nextInt();
count = count +a[i];
}
quicksort(a,0,n-1);
System.out.println(a[n-1]);
System.out.println(a[0]);
System.out.println(count);
}
}
快速排序找数列最大值-Java
最新推荐文章于 2024-07-10 16:47:58 发布