Sort matrix to get the row and column position of sorted matrix

2 次查看(过去 30 天)
how should i sort the matrix
M = [0,15,14,13,10,7,4,1,2;
0,0,9,6,4,12,1,3,1;
0,0,0,10,8,5,3,1,2;
0,0,0,0,17,2,11,1,4;
0,0,0,0,0,1,12,1,7;
0,0,0,0,0,0,1,7,5;
0,0,0,0,0,0,0,3,9;
0,0,0,0,0,0,0,0,8];
to get the sorted index positions as
[4,5], [1,2], [1,3], [1,4], [2,6], [5,7], [4,7], [1,5].....

采纳的回答

Ameer Hamza
Ameer Hamza 2020-3-21
编辑:Ameer Hamza 2020-3-21
[~,idx] = sort(M(:), 'descend');
idx(M(:)==0) = [];
[row, col] = ind2sub(size(M), idx);
indexes = [row col];
Result:
indexes =
4 5
1 2
1 3
1 4
2 6
5 7
4 7
3 4
1 5
.......

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by