How to get first 3 maximum number in a matrix

1 Ansicht (letzte 30 Tage)
Moe
Moe am 4 Nov. 2014
Kommentiert: Adam am 5 Nov. 2014
Suppose I have a matrix m:
m = [7;1;4;4;12;2;6;10;2];
I want to find first 3 maximum in matrix m, means like:
n = [7;12;10]; % sorting is not issue

Akzeptierte Antwort

Adam
Adam am 4 Nov. 2014
temp = sort( m, 'descend' );
n = temp(1:3);
  2 Kommentare
Moe
Moe am 5 Nov. 2014
Thanks. How to find index number of n?
Adam
Adam am 5 Nov. 2014
[temp, idx] = sort( m, 'descend' );
n = temp(1:3);
idx = idx(1:3);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Azzi Abdelmalek
Azzi Abdelmalek am 4 Nov. 2014
n=sort(m)
n=n(end:end-2)

Matt J
Matt J am 5 Nov. 2014
Bruno Luong took the trouble to make a fast MEX implementation

Kategorien

Mehr zu Shifting and Sorting Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by