加重计算后,方法2就更快了,
比如把方法1中的"*a(i,:)"换成"*((a(:,i).^3).^(1/3))",方法2也类似换一下。
怀疑是生成a(i,i:end)时花了更多时间,只能猜,因为这没法像python可以看字节码。
【 在 dlmaple (ph) 的大作中提到: 】
: 下面是高斯消去法的一段代码,我觉得方法2可以减少部分运算,结果花费的时间比方法1还长一点点(生成1000节的方阵,然后测试a=rand(1000);
: tic;guass(a);toc
: 注释掉方法2,取消注释方法1,然后再测试)每一次都是方法1时间短一点,而不是想象中的方法1耗费时间是方法2的二倍。
: ...................
--
FROM 117.173.138.*