Я создал многомерный массив (срез) в Go следующим образом:Сортировка многомерного массива/срез
var distancematrix [5][5]int
Так что это 5 * 5 массив/срез. Теперь я вставив значения в этом срезе таким образом, что в точке:
distancematrix : [[0 154 12 35 138] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0]]
Теперь я хочу, чтобы отсортировать этот массив в порядке возрастания, например:
sorteddistancematrix : [[0 12 35 138 154] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0]]
Я попытался sort.Ints(distancematrix[0])
, но он бросает говорится об ошибке:
cannot use distancematrix[0] (type [5]int) as type []int in argument to sort.Ints
в основном, Я хочу, чтобы принести наименьшее ненулевое значение в массиве. Как я могу отсортировать этот массив для достижения этого?
Вы смесительный термин массив и срез по всему вашему вопросу. Я бы рекомендовал прочитать [эту статью] (https://blog.golang.org/go-slices-usage-and-internals) для некоторых разъяснений. –
Получение наименьшего ненулевого значения не требует сортировки массива, на самом деле это будет довольно расточительно. – chill