Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
行列の 3 番目の最大値を見つけたいです。私はすでに最大値を持っています
max(A)
そして、私はすでに2番目の最大値を持っています
max(A(A~=max(A))
しかし、私は3番目のものを行うことができません.アドバイスと助けをお願いします.
最も簡単な解決策は、値をA降順に並べ替え、3 番目に並べ替えられた要素 (存在する場合) を選択することです。
A
A_sorted = sort(A(:), 'descend'); third_max = A_sorted(min(3, end));
値の繰り返しを許可しない場合 (たとえば A = [10, 10; 9; 2]、2 が必要)、一意の値を並べ替えます。
A = [10, 10; 9; 2]
A_sorted = sort(unique(A), 'descend');