tnjk.net
当前位置:首页 >> mAtlAB sort函数 >>

mAtlAB sort函数

给你举了例子: X=magic(5) X = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 >> [a,b]=sort(X,2) a = 1 8 15 17 24 5 7 14 16 23 4 6 13 20 22 3 10 12 19 21 2 9 11 18 25 b = 3 4 5 1 2 2 3 4 5 1 1 2 3 4 5 5 1 2 3 ...

你用的语法句式是对的,但b不是行列下标,而是线性下标,可进行转换,如: [a,b]=sort(pv3(:),'descend'); [r,c]=ind2sub(size(pv3),b); r,c就是a中元素在排序前的行列下标。

function B=sorting_pup(A)n = length(A);for i = 1:n-1 for j = i+1:n if A(i)>A(j) temp = A(i); A(i) = A(j); A(j) = temp; end endendB = A;

function B=sorting_pup(A)n = length(A);for i = 1:n-1 for j = i+1:n if A(i)>A(j) temp = A(i); A(i) = A(j); A(j) = temp; end endendB = A;

sort函数的用法: 做ACM题的时候,排序是一种经常要用到的操作。如果每次都自己写个冒泡之类的O(n^2)排序,不但程序容易超时,而且浪费宝贵的比赛时间,还很有可能写错。STL里面有个sort函数,可以直接对数组排序,复杂度为n*log2(n)。使用这个...

>> x=[8 3 4 1 5 9 6 7 2]; >> [X,i]=sort(x) X = 1 2 3 4 5 6 7 8 9 i = 4 9 2 3 5 7 8 1 6 >> 可以知道sort()函数是排序函数; X是返回的排序之后的数组; i是返回的排序后X的每个元素在原先数组中的位置。

假如a是一个2*n的矩阵,即两行. b=a(1,:); [c,pos]=sort(b);%pos为排序后的下标,c为第一行的排序结果; a(2,:)=a(2,pos);%第二行按照第一行排序的下标对应 a(1,:)=c;%第一行结果重新赋给a 的第一行 以下适用于m*n的矩阵按第一行排序 [ b, pos ] = ...

[ksort, indexk] = sort(k); c(indexk) 就是原来的i了

假设A是那个数组 [a,b]=sort(A); a就是你要求的排序

楼主问的应该是sortrows吧,按照row来排列,比如 x = [1 4 3 5; 1 3 2 6] x = 1 4 3 5 1 3 2 6 sortrows(x) 其结果是按照row来排列,默认首先排第一列,1和1一样大,那么排第二列,3比4小,所以1 3 2 6应该在第一行。假如使用 sortrows(x, 4) 那...

网站首页 | 网站地图
All rights reserved Powered by www.tnjk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com