А жаль, целый день ушел 😁
package com.javarush.task.task08.task0826;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
Пять победителей
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int[] array = new int[20];
for (int i = 0; i < array.length; i++) {
array[i] = Integer.parseInt(reader.readLine());
}
sort(array);
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
System.out.println(array[3]);
System.out.println(array[4]);
}
public static void sort(int[] array) {
//напишите тут ваш код
qsort(array, 0, array.length-1);
}
public static void qsort(int[] arr, int begin, int end) {
if(begin<end) {
Integer partIndex = part(arr, begin, end);
qsort(arr, begin, partIndex-1);
qsort(arr, partIndex, end);
}
}
public static Integer part(int[] arr, int begin, int end) {
int rightIndex = end;
int leftIndex = begin;
int pivot = arr[begin];
while(leftIndex <= rightIndex) {
while(arr[leftIndex]>pivot) {
leftIndex++;
}
while(arr[rightIndex]<pivot) {
rightIndex--;
}
if(leftIndex <= rightIndex) {
swap(arr, leftIndex, rightIndex);
leftIndex++;
rightIndex--;
}
}
return leftIndex;
}
public static void swap (int[] arr, int Index1, int Index2) {
int tmp = arr[Index1];
arr[Index1] = arr[Index2];
arr[Index2] = tmp;
}
}