How can I find the n smallest numbers in a two-dimensional array of m numbers?
1 回表示 (過去 30 日間)
古いコメントを表示
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
2 件のコメント
Randy Souza
2013 年 4 月 15 日
@ankita: I tried to edit this to make the question more clear, please edit it yourself if I have distorted the meaning...
採用された回答
Iman Ansari
2013 年 4 月 13 日
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 件のコメント
Iman Ansari
2013 年 4 月 13 日
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
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!