首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

这样能很快提高速度吗?解决方法

2012-03-13 
这样能很快提高速度吗?最近遇到这样一个递归的问题:C/C++ codevoid dfs(参数){if (表达式)dfs(参数)----

这样能很快提高速度吗?
最近遇到这样一个递归的问题:

C/C++ code
void dfs(参数){if (表达式)        dfs(参数);           <--------else if (表达式)     for (int i = 0; i < 100; i++)     {          dfs(参数);          表达式;     }}

C/C++ code
void dfs(参数){     for (int i = 0; i < 100; i++)     {         if (表达式)              dfs(参数);  <--------         else if (表达式)              dfs(参数);         表达式;     }}


上面两段代码的结果是一样的,但是上面一段代码会比下面这一段快10倍以上,这是为什么呢?

[解决办法]
下面那个无论表达式是否成立,都要循环。
上面那个如果表达式不成立,就不循环了。而且编译器可以对上面那个进行优化,以提高速度。

热点排行