c. 针对运行速度优化下框代码:
for (i=0; i<N; i++) 
    { 
     if (condition) 
         DoSomething(); 
     else 
         DoOtherthing(); 
     } 
本人新手,不太懂代码优化,请各位大大结合这个例子解释为我解释一下
 

解决方案 »

  1.   

    if (condition) {
        for (i=0; i <N; i++)
            DoSomething();
    }
    else {
        for (i=0; i <N; i++)
            DoOtherthing();
    }少做N次比较。
      

  2.   

    恩,我也觉得,如果condition和i有关的话,这个优化就有问题了
      

  3.   

    我想这个题的原意应该就是 condition 与 i 无关,如2楼那样就对了。原来的代码每次循环都要对条件进行判断,共判断N次,而如2楼优化后,只需判断1次,省了N-1次判断。