【小技巧】在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

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

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

相关内容

热门资讯

摸鱼、钓虾、吃瓜、赏荷…初夏时... 这个周末,一场场充满野趣的“田园嘉年华”在沪郊金山多个农场上演,吸引众多市民带着孩子下乡来,赛跑、吃...
原创 戚... 5月28日,北京环球影城迎来了一对温暖的家庭画面:戚薇和李承铉携三岁半的儿子Seven现身游玩。现场...
滹沱河畔 遇见“诗和远方” 图为市民在滹沱河畔休闲娱乐。 初夏五月,惠风和畅。徜徉在石家庄滹沱河生态区(城区段),澄澈河水蜿蜒...
在迪士尼排队两小时,我才看清V... 文丨沈理 在网上看到一则新闻: 上海迪士尼,创极速光轮排队区。一个父亲牵着七八岁的儿子,已经在烈日...
重庆文旅喊你去吃火锅、观山水、... 本网讯(草原云·正北方网记者 马丽侠)火锅、机车、文创、演艺……5月28日下午,重庆市文化和旅游发展...