为了账号安全,请及时绑定邮箱和手机立即绑定

java学习之旅-6

标签:
Java

有关for循环嵌套问题的优化:

for(int i = 0;i < 1000;i ++){        for(int j = 0;j < 100;j ++)        {                for(int k = 0;k < 10;k ++)                {                        System.out.println("(" + i + "," + j + "," + k + ")");                }}}

i,j,k分别:
定义了1,1000,100000次;
初始化了1,1000,100000次;
自增了1000,100000,1000000次。

想要优化此代码,则需要尽可能地减少运算次数。其实i,j,k定义其实只需要一次,上面的代码可以这样改:

int i,j,k;for(i = 0;i < 1000;i ++){        for(j = 0;j < 100;j ++)        {                for(k = 0;k < 10;k ++)                {                        System.out.println("(" + i + "," + j + "," + k + ")");                }}}

i,j,k分别:
定义了1,1,1次;(定义次数减少了)
初始化了1,1000,100000次;
自增了1000,100000,1000000次。

其实,除了减少定义次数外,还可以减少初始化次数,代码如下:

int i,j,k;for(i = 0;i < 10;i ++){        for(j = 0;j < 100;j ++)        {                for(k = 0;k < 1000;k ++)                {                        System.out.println("(" + k + "," + j + "," + i + ")");//交换i和k的位置,保证结果不发生改变。                }}}

i,j,k分别:
定义了1,1,1次;
初始化了1,10,1000次;(初始化次数减少了)
自增了1000,100000,1000000次。

这样优化之后,代码的效率就提高了很多。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消