Из строки array[min] = array[i][j];
Я думаю, вам нужно понять, как сначала работают массивы. Вы не можете присвоить элемент (значение) массиву.
Предполагая, что у вас есть входные данные в 2d массиве, как показано ниже:
array = {
{5, 1},
{2, 1},
{3, 1},
{1, 1},
{4, 1}
}
Вы можете отсортировать их, используя встроенный вид Arrays
в Java с простым компаратором, например:
Arrays.sort( array, new Comparator<int[]>() {
@Override
public int compare( int[] a, int [] b ) {
return a[0] - b[0]; //you compare only first elements
}
});
Если вы видите выше, он сравнивает только первые элементы, и массив будет отсортирован на основе первого значения в каждом элементе .
Arrays.sort()
использует версию быстрой сортировки и, следовательно, должна быть более эффективной, чем выделение или пузырьковая сортировка.