Попытка найти индекс минимального значения в списке варов в Octave

У меня есть список варов с разными значениями

      a = 2
b = 1
c= 12343243
d = 8998

Может найти наименьшее значение

      aSmallestVALUE = min([a, b, c, d])

и индекс

      [v,idx]=min([a, b, c, d])

Я хочу найти индекс переменной и отсортировать этот список от 0 до чего-то вроде

      sorted list = b, a, d, c

1 ответ

Очевидно, что если вы хотите рассматривать эти четыре переменные как «список», который нужно отсортировать, вам нужно работать с конструкцией «список», а не с 4 изолированными переменными.

      L = [2, 1, 12343243, 8998];

В противном случае нет смысла говорить об «индексе» существующей независимой переменной (хотя, очевидно, вы можете построить его из группы уже существующих переменных, если хотите).

С L в руке, теперь вы можете сделать

      [minval, idx] = min( L )
% minval = 1
% idx = 2

найти минимум и соответствующий ему индекс, и

      [sorted, sortedindices] = sort( L )
% sorted =
%    1.0000e+00   2.0000e+00   8.9980e+03   1.2343e+07
%
% sortedindices =
%    2   1   4   3

чтобы получить отсортированный массив с соответствующими индексами.

Другие вопросы по тегам