发布网友
共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 =
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
aa =
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
17 24 1 8 15
23 5 7 14 16
Elapsed time is 0.000133 seconds.
A =
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
17 24 1 8 15
23 5 7 14 16
Elapsed time is 0.000223 seconds.
ans =
0
热心网友
>> A=[1:4;5:8;2:5]
A =
1 2 3 4
5 6 7 8
2 3 4 5
>> sortrows(A,1)
ans =
1 2 3 4
2 3 4 5
5 6 7 8追问这个我知道,但计算速度较慢,我需要一个计算速度较快的,望指点
追答它既然能作为系统内置函数存在,已经能说明它有一定的优势,我们自己编的话能快过他吗,说实话有内置函数还是用内置函数的好