How can I find the n smallest numbers in a two-dimensional array of m numbers?

1 visualización (últimos 30 días)
For example, with this 2x5 matrix (m=10 and n=4), the expected answer is
(2,9), (1,5), (1,3), (2,10)
111 , 112, 145, 212
236 245 145 244 112
225 232 266 111 212

Respuesta aceptada

Iman Ansari
Iman Ansari el 13 de Abr. de 2013
Hi.
n=4;
a=[236 245 145 244 112; 225 232 266 111 212];
[r c]=size(a);
a = a';
vector=a(:);
[B,IX] = sort(vector);
[fix((IX(1:n)-1)./c)+1 IX(1:n)]
  2 comentarios
Iman Ansari
Iman Ansari el 13 de Abr. de 2013
Finding 4 Smallest values of matrix, but results in which rows and indexing in this order:
1 2 3 4 5
6 7 8 9 10

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by