for循环优化

1.原:

  1. for (int i = 0; i < 1000; i++)  
  2.     for (int j = 0; j < 100; j++)  
  3.         for (int k = 0; k < 10; k++)  
  4.             testFunction (i, j, k);  

优化方案一:

  1. for (int i = 0; i < 10; i++)  
  2.     for (int j = 0; j < 100; j++)  
  3.         for (int k = 0; k < 1000; k++)  
  4.             testFunction (k, j, i);  

优化方案二:

  1. int i, j, k;  
  2. for (i = 0; i < 10; i++)  
  3.     for (j = 0; j < 100; j++)  
  4.         for (k = 0; k < 1000; k++)  
  5.             testFunction (k, j, i);  

方案主要是将循环次数最少的放到外面,循环次数最多的放里面,这样可以最大程度的(注:3个不同次数的循环变量共有6种排列组合情况,此种组合为最优)减少相关循环变量的实例化次数、初始化次数、比较次数、自增次数

2.

通常使用的FOR循环语句形式有:
int i;
for (i=0;i<n;i++)
{
}

这种循环形式,我想一般人都用过,对这种循环的优化如下:
int i;
for (i=n;i>0;i--)
{
}

猜你喜欢

转载自577439237.iteye.com/blog/2256392