Sort a matrix without using the sort function
3 次查看(过去 30 天)
显示 更早的评论
To study, I am trying to sort a matrix using for loops. I used a template I had for finding a max.
[row,column]=size(a);
sortmx=zeros(size(a));
for n=1:column
mx=a(1,n);
for p=2:row
if a(p,n)>mx
mx=a(p,n);
else
mx=a(p-1,n);
end
end
sortmx(n,p)=mx
end
0 个评论
回答(1 个)
Paulo Silva
2011-5-5
[row,column]=size(a);
for nc=1:column
for nr=1:row
[C,I]=max(a(nr:row,nc));
b=a(nr,nc);
a(nr,nc)=C;
a(I(1)+nr-1,nc)=b;
end
end
2 个评论
Matt Fig
2011-5-5
Did you search MATLAB Answers first? I found at least two identical questions from past posters....
This must be a popular homework question indeed!
另请参阅
类别
在 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!