import java.util.Random;
public class Tester {
public static void main(String[] args) {
selectionSort(args);
}
private static void printArray(int[] anArray) {
for (int i = 0; i < anArray.length; i++) {
if (i > 0) {
System.out.print(", ");
}
System.out.print(anArray[i]);
}
}
public static void selectionSort(String[] args) {
int i, x = 0;
int l = 10;
Random r = new Random(271);
int array[] = new int[l];
for (i = 0; i < l; i++) {
array[i] = r.nextInt();
}
while (i < l) {
for (int j = 1; j <= i; j++) {
if (array[j] < array[x])
x = j;
}
i++;
}
printArray(array);
}
}
Все в порядке, я просто не могу распечатать его правильно. Когда я печатаю, я получаю "-1061221096, -349834974, -1279215928, 1452441141, -367008517, 638966200, -464597014, 1551135748, -446923224, 542496703", что неверно. Я считаю, что каждое число должно быть меньше 271.
args
вselectionSort
? - person Balwinder Singh   schedule 04.02.2016Random
имеет внутреннее семя и алгоритм, который требует, чтобы вы использовали один экземпляр для группы значений, использование нескольких экземпляров может генерировать повторяющиеся значения или даже значения в том же порядке. - person MadProgrammer   schedule 04.02.2016