【小技巧】在matlab中如何精确统计一段程序的运行时间
admin
2024-03-19 19:58:57

       同情况下,我们需要统计matlab中某个算法或者程序段的运行时间,用于分析程序段的复杂性。此时,我们可以使用tic和toc指令来完成,具体实现过程如下:

clc;
clear;
close all;tic;
t=0;
for i= 1:1000t=t+1; 
end
times = toc;
times

运行之后,我们可以看到

times =

   7.9960e-04

即运行时间为7.9960e-04s

假设将上述程序的循环改为100万次,即:

clc;
clear;
close all;tic;
t=0;
for i= 1:1000000t=t+1; 
end
times = toc;
times

运行之后,我们可以看到

times =

    0.0025

即运行时间为0.0025s

更进一步,我们可以通过这个方法统计不同循环次数所对应的程序运行时间,编写如下matlab:

clc;
clear;
close all;idx=0;
for j = 10000000:10000000:100000000idx=idx+1;tic;t=0;for i= 1:jt=t+1; endtimes(idx,1) = toc;
end
times
figure;
semilogx([10000000:10000000:100000000],times,'b-o');
xlabel('循环次数');
ylabel('运行时间s');

运行后,可以看到其时间为:


times =

    0.0136
    0.0175
    0.0262
    0.0350
    0.0438
    0.0517
    0.0607
    0.0694
    0.0780
    0.0866

即不同循环次数所对应的运行时间,

使用相似的方法,我们可以统计各种不同算法的复杂度。

相关内容

热门资讯

17道 特色旺销菜 恰恰茄子 原料: 糯长茄200克,香菜3克。 调料: 秘制茄子酱40克。 制作: 1.将长茄去皮后...
西藏攻略:7天6晚经典路线,带... 每年5月至10月,是西藏的季节,也是游客最多的时段。最近我们收到很多朋友的咨询:“次来西藏,只有7天...