我是靠谱客的博主 冷酷黑米,这篇文章主要介绍【小技巧】在matlab中如何精确统计一段程序的运行时间,现在分享给大家,希望可以做个参考。

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

复制代码
1
2
3
4
5
6
7
8
9
10
clc; clear; close all; tic; t=0; for i= 1:1000 t=t+1; end times = toc; times

运行之后,我们可以看到

times =

   7.9960e-04

即运行时间为7.9960e-04s

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

复制代码
1
2
3
4
5
6
7
8
9
10
clc; clear; close all; tic; t=0; for i= 1:1000000 t=t+1; end times = toc; times

运行之后,我们可以看到

times =

    0.0025

即运行时间为0.0025s

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

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
clc; clear; close all; idx=0; for j = 10000000:10000000:100000000 idx=idx+1; tic; t=0; for i= 1:j t=t+1; end times(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

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

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

最后

以上就是冷酷黑米最近收集整理的关于【小技巧】在matlab中如何精确统计一段程序的运行时间的全部内容,更多相关【小技巧】在matlab中如何精确统计一段程序内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(124)

评论列表共有 0 条评论

立即
投稿
返回
顶部