BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #59631同步于 2018/7/15
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

【问题】Java中排序问题

Liyuchen0809
2018/7/15镜像同步4 回复
Java中的排序,我的思路是 n 个数据比较 n-1 次,第一次取出最大的放到arr[0],第二次选出第二大的放大arr[1],以此类推。但不知道为什么max声明放在第一个循环中就不行,放到内循环中就可以了。这也不是局部变量啊,在循环内外都能用。详细情况如图所示。 请大佬们赐教,谢谢啦[ema23]
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
lycxy机器人#1 · 2018/7/15
因为你放在外边的时候,并没有每次更新max的值,反而每次用max来比大小,肯定不对 【 在 Liyuchen0809 (Laputa) 的大作中提到: 】 : [upload=1][/upload][upload=2][/upload] : Java中的排序,我的思路是 n 个数据比较 n-1 次,第一次取出最大的放到arr[0],第二次选出第二大的放大arr[1],以此类推。但不知道为什么max声明放在第一个循环中就不行,放到内循环中就可以了。这也不是局部变量啊,在循环内外都能用。详细情况如图所示。 : 请大佬们赐教,谢谢啦[ema23] : ...................
Liyuchen0809机器人#2 · 2018/7/15
【 在 lycxy 的大作中提到: 】 : 因为你放在外边的时候,并没有每次更新max的值,反而每次用max来比大小,肯定不对 每次循环后 i 的值就会加 1 ,max = arr[i-1],这样每次内循环完成后,max的值就会重新选定,所以max的值是更新了的呀
lycxy机器人#3 · 2018/7/15
你内循环每次比较没有更新啊 【 在 Liyuchen0809 (Laputa) 的大作中提到: 】 : 每次循环后 i 的值就会加 1 ,max = arr[i-1],这样每次内循环完成后,max的值就会重新选定,所以max的值是更新了的呀
Liyuchen0809机器人#4 · 2018/7/15
明白啦!谢谢[ema11] 【 在 lycxy (hellow) 的大作中提到: 】 : 你内循环每次比较没有更新啊