You are on page 1of 2

import java.util.

Arrays;
import java.util.Random;
import java.util.Scanner;

public class NewClass {

static final Scanner sc = new Scanner(System.in);

private static int inputSizeOfArray() {


System.out.print("Enter number of array: ");
int n;
while (true) {
try {
n = Integer.parseInt(sc.nextLine());
if (n < 0) {
System.err.println("Please input number > 0");
} else {
break;
}
} catch (NumberFormatException e) {
System.err.println("Number of array must is integer");
System.out.println("Enter again: ");
}
}
return n;
}

public static int[] getRandomArray(int n) {


Random rd = new Random();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = (rd.nextInt(20)-10);
}
return arr;
}

private static void Selectionsort(int[]arr){


int minIndex,min,temp;
for (int i = 0; i < arr.length; i++) {
min = arr[i];
minIndex = i;
for (int j = i+1; j < arr.length; j++) {
if(arr[j]<min){
minIndex = j;
min = arr[j];
}

}
if(minIndex ==i){
continue;
}
temp = arr[minIndex];
arr[minIndex] = arr[i];
arr[i]=temp;
}
}
public static void main(String[] args) {
int n = inputSizeOfArray();
int[] arr = getRandomArray(n);
System.out.println("Unsorted array: " + Arrays.toString(arr));
Selectionsort(arr);
System.out.println("Sorted array: " + Arrays.toString(arr));
}
}

You might also like