可能不少同学遇到过需要循环很多次的情况。
比如我遇到的情况,循环最多要很多次。
大概是
,这就很恐怖了。。。。
应该怎么化简呢?
递归
一个办法就是用递归试试。
void recursion(i,j){
if(j-i>10000){
recursion(i,(i+j)/2);
recursion((i+j)/2,j);
}
else{
执行代码
}
}
我试了一下,确实有点快过,可以把i到j之间分成更多的部分,然后再递归,效果更好。
有些递归甚至能把相关的记录下来。
一次多动作
就是比如你要循环100次,改成循环10次,每次自己手动写10个。
可能和多线程有关,但是我不学底层设计,我也不知道。
不管怎么说,确实能快一点。