Sorting 2D matrix
11 ビュー (過去 30 日間)
古いコメントを表示
i wanna sort a 2D Matrix like
a = [1 3 0;5 2 8;4 7 10]
without using any existing function in MATLAB like sort,.... i need an algorithm to sort element by element can any one help ? to be
a = [0 1 2;3 4 5;7 8 10]
4 件のコメント
Jan
2018 年 5 月 4 日
Sorting a matrix elementwise is a strange job. If you do not consider the rows or columns, why is the input and output a matrix and not a vector? Please confirm that this does exactly what you want with Matlab commands:
a = [1 3 0;5 2 8;4 7 10]
b = reshape(sort(a(:)), size(a))
"No existing Matlab functions" cannot work. Even "=" calls subasgn and ">" calls the gt function. Without built-in functions, there is almost nothing, what can be done in Matlab at all.
回答 (1 件)
Yuvaraj Venkataswamy
2018 年 5 月 4 日
Use this commands where a is input matrix and S_a is the your required answer.
a = [1 3 0;5 2 8;4 7 10]
b=sort(a(:));
S_a=vec2mat(b,3);
1 件のコメント
Ameer Hamza
2018 年 5 月 4 日
編集済み: Ameer Hamza
2018 年 5 月 4 日
The question specifically mentioned not to use built-in sort() function.
参考
カテゴリ
Help Center および File Exchange で Shifting and Sorting Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!