14

以下は単純な double 配列です。

array=[3 1 1]

最大要素インデックスは 1

また:

array=[3 9 1]

最大要素インデックスは 2 です

最大の要素インデックスを取得するにはどうすればよいですか?

4

4 に答える 4

33

max関数の 2 番目の出力引数を使用します。

[ max_value, max_index ] = max( [ 3 9 1 ] )
于 2012-11-28T00:58:36.970 に答える
3

私の標準的な解決策は、

index = find(array == max(array), 1);

最大値に等しい最初の要素のインデックスを返します。find代わりに最後の要素が必要な場合などのオプションをいじることができます。

于 2012-11-28T00:59:34.413 に答える
1

各行の最大値を取得する必要がある場合は、次を使用できます。

array = [1, 2, 3; 6, 2, 1; 4, 1, 5];
[max_value max_index] = max(array, [], 2)

%3, 3
%6, 1
%5, 3
于 2017-04-25T11:08:05.617 に答える