| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2084 人关注过本帖
标题:看看matlab内置函数的效率
只看楼主 加入收藏
zhangenter
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:390
专家分:0
注 册:2006-6-5
收藏
得分:0 

还有,我在2楼已经说的,三个程序段执行顺序不一样,变化很大.for→while→sum的顺序,出来的时间是:
use for
Elapsed time is 1.969000 seconds.
use while
Elapsed time is 2.438000 seconds.
use sum
Elapsed time is 0.046000 seconds.
如果是sum→for→while的顺序,出来的时间是
use for
Elapsed time is 0.015000 seconds.
use while
Elapsed time is 0.016000 seconds.
use sum
Elapsed time is 0.047000 seconds.
这两种情况都是把程序存在m文件中执行的,如果你直接全部复制到命令窗中执行的话,就算是
sum→for→while的顺序,时间也很大
use sum
Elapsed time is 0.047000 seconds.
use for
Elapsed time is 1.297000 seconds.
use while
Elapsed time is 3.094000 seconds.
大胆的猜想下楼主大概时间就是这样得到的.不过这应该不准.
把三个程序段扔到三个文件里分别执行得到的答案应该是最准确的:
use sum
Elapsed time is 0.047000 seconds.
use for
Elapsed time is 0.015000 seconds.
use while
Elapsed time is 0.016000 seconds.
虽然我说不出什么道理,但实践了很多次,事实就是如此



OldHandle = findobj( \'Name\', \'悲伤\' ) ;if ~isempty(OldHandle),delete(OldHandle) ;end for Time = \'现在\':\'每一天\':\'永远\',set( gco, \'心情\', \'快乐\');end % 这段代码为你天天快乐而存在
2006-06-13 21:03
abingchem
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:716
专家分:0
注 册:2004-12-30
收藏
得分:0 

呵呵,不行啦,我这里for循环竟然运行时间时而为0,时而为0.016,反而sum用的时间最多

可能这样的检测方法不对,因为sum中分配的内存空间太多了。


此人已消失
2006-06-13 22:32
快速回复:看看matlab内置函数的效率
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028341 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved