How to get first 3 maximum number in a matrix

2 vues (au cours des 30 derniers jours)
Moe
Moe le 4 Nov 2014
Commenté : Adam le 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

Réponse acceptée

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

Connectez-vous pour commenter.

Plus de réponses (2)

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

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

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by