http://blog.csdn.net/lgg201/article/details/8637763
http://blog.csdn.net/zhongjling/article/details/8783085 阶乘算法
cout << endl;与cout<<"\n"有什么差别:
endl会将缓冲区的内容提交至流中,忘记刷新输出流、也就是不用endl,会造成输出停留在缓冲区中,如果程序崩溃,将会导致对程序崩溃位置的错误推断。endl;清除缓存,防止缓存纠发的错误。
而“\n”和一般的字符写入流没啥区别.
关于++i和i++的区别
i++:先运算,再自增
++i:先自增,再运算
++i:先自增,再运算
在循环中应该避免使用复杂的表达式,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快。
++i与i++的内存开销不同++i与i++的内存开销不同
请问i++和++i有所以结论就是:如果arr.length需要变化则使用++,否则使用--。
请你用arr.length的话,每次比较都要去读取arr.length这个值的。所以会比较慢,你吧这个值保存到一个const 变量里,然后再做回比较快,这个时候这个变量被当做编译常量。既快又安全。问i++和++i有什么区别
1,for(int i = 0;i<arr.length;i++) 最耗时,
2,for(int i=0,len=list.size();i<len;i++) 次之,
3, for(int i = arr.length-1;i>=0;i--) 最快
2,for(int i=0,len=list.size();i<len;i++) 次之,
3, for(int i = arr.length-1;i>=0;i--) 最快