Я не уверен, как мне вызвать мой код, чтобы он соответствовал моему рандомизатору. Мой рандомизатор в основном генерирует несколько случайных целых чисел в массиве и печатает их так.
Редактировать: Если мне неясно, я хочу вызвать мой рандомизатор для обоих методов класса сортировки вставки!
Я пытался использовать реализацию сортировки вставкойя взял от geeks4geeks. Все они имеют параметр int [arr].
Это мой код
public class randomArr {
public void randomizer(){
Scanner sc = new Scanner(System.in);
Random r = new Random();
System.out.println("Please enter the amount of integers you want in your array: ");
int n = sc.nextInt();
// Create array of 1000 ints
int[] intArr = new int[n];
// Fill array with random ints
for ( int i = 0; i < intArr.length; i++) {
intArr[i] = r.nextInt(100);
System.out.print(intArr[i] + ", ");
}
}
}
Это то, что я хочу сделать в основном:
Как вы можете видеть, я называю сортировку и вывод массива с моим "intArr". Как мне вызвать мой метод с данными методами?
Я закомментировал объект, который сделал, используя мой метод, но если бы я оставил его внутри, как бы я использовал этот объект для вызова sort () и printarray ()?
public class insertionSort {
public static void main(String[] args){
//randomArr arry = new randomArr(); \\the object of my method
//arry.randomizer());
Scanner sc = new Scanner(System.in);
Random r = new Random();
System.out.println("Please enter the amount of integers you want in your array: ");
int n = sc.nextInt();
// Create array of 1000 ints
int[] intArr = new int[n];
// Fill array with random ints
for ( int i = 0; i < intArr.length; i++) {
intArr[i] = r.nextInt(100);
System.out.print(intArr[i] + ", ");
}
sort(intArr);
printArray(intArr);
}
public static void sort(int arr[]){
int n = arr.length;
for (int i = 1; i < n; ++i) {
int key = arr[i];
int j = i - 1;
/* Move elements of arr[0..i-1], that are
greater than key, to one position ahead
of their current position */
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
static void printArray(int arr[]){
int n = arr.length;
for (int i = 0; i < n; ++i)
System.out.print(arr[i] + ", ");
System.out.println();
}
}