锁定老帖子 主题:面试题讨论(一)
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (3)
|
|
---|---|
作者 | 正文 |
发表时间:2010-09-14
|
|
返回顶楼 | |
发表时间:2010-09-14
最后修改:2010-09-14
见过,个人觉得这个比较 好
for(int i = 0;i<100;i++) { for(int j = 0;j<1000;j++) { for(int k = 0;k<10000;k++) { } } } |
|
返回顶楼 | |
发表时间:2010-09-14
aoliwen521 写道 把循环少的放在外层,我认为还应该是减少了局部变量初始化的次数。
优化前i初始化1次,j10000次,k1000×10000次 优化后k1次,j100次,i100×1000次。 每个变量只会实例化一次! |
|
返回顶楼 | |
发表时间:2010-09-14
垃圾回收更及时
|
|
返回顶楼 | |
发表时间:2010-09-14
瑞友(用友收购的公司)约我去面试,外包做项目,我还去吗?(现在也在做外包)
|
|
返回顶楼 | |
发表时间:2010-09-14
zhlfz 写道 见过,个人觉得这个比较 好
for(int i = 0;i<100;i++) { for(int j = 0;j<1000;j++) { for(int k = 0;k<10000;k++) { } } } 我觉得下面的会更好一些 int i=0,j=0,k=0; for(i = 0;i<100;i++) { for(j = 0;j<1000;j++) { for(k = 0;k<10000;k++) { } } } |
|
返回顶楼 | |
发表时间:2010-09-14
参考:
http://www.iteye.com/topic/761731 |
|
返回顶楼 | |
发表时间:2010-09-14
你们这么一优化,执行的结果还对嘛!!想想function的第一个参数是什么样的变化!!
这个优化? 是不是只需在循环前定义变量就OK吗? |
|
返回顶楼 | |
发表时间:2010-09-14
用友的人是怎么说的?一楼的确实可以提高性能可以用计时器测一下
|
|
返回顶楼 | |
发表时间:2010-09-14
最后修改:2010-09-14
这种题目挺无语的。实际当中尽量避免多重循环是一条重要的编码准则,另外还有一条重要的编码准则是:当性能问题没有成为问题前,不要做任何优化。
出现三重循环的时候应该考虑考虑是不是设计或者算法有问题。 几乎99%的时候性能取决于架构。 |
|
返回顶楼 | |