先打好矩阵,光标放矩阵左边
选3行1列
请点击输入图片描述
请点击输入图片描述
选中矩阵
请点击输入图片描述
选第一列第三符号
请点击输入图片描述
请点击输入图片描述
选中头顶的一格(随便输个数便于选中),上面工具栏点“大小”-“标准”
请点击输入图片描述
请点击输入图片描述
光标继续选中头顶数字,跟步骤2一样选3列一行矩阵
请点击输入图片描述
1、在matlab中,将矩阵按某一列排序,主要使用sortrows函数,可以在命令行窗口中输入help sortrows。
2、创建一个3行3列的a矩阵,使用“sortrows(a,1)”,对整个矩阵按第一列进行升序排序。
3、在命令行窗口中按回车键,可以看到排序的效果。
4、如果输入“sortrows(a,2)”就按第二列对矩阵进行排序,可以看到行跟着变动。
5、也可以使用sort(a,1)对矩阵每列进行排序,sort(a,2)对矩阵每行进行排序。
a=rand(100,100)tic
[b,pos]=sort(a(:,1))
aa=a(pos,:)
toc
tic
A=sortrows(a,1)
toc
det(aa-A)
前面的算法时间要短,效果是一样的
Elapsed time is 0.000110 seconds.
Elapsed time is 0.000259 seconds.
ans =
0
用个小矩阵检测下
a=magic(5)
tic
[b,pos]=sort(a(:,1))
aa=a(pos,:)
toc
tic
A=sortrows(a,1)
toc
det(aa-A)
a =
1724 1 815
23 5 71416
4 6132022
10121921 3
111825 2 9
aa =
4 6132022
10121921 3
111825 2 9
1724 1 815
23 5 71416
Elapsed time is 0.000133 seconds.
A =
4 6132022
10121921 3
111825 2 9
1724 1 815
23 5 71416
Elapsed time is 0.000223 seconds.
ans =
0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)