JAVA 数组排序小程序里的这段代码麻烦解释一下?
ringa_lee
ringa_lee 2017-04-18 10:36:52
0
3
358
ringa_lee
ringa_lee

ringa_lee

全部回复(3)
洪涛

这三行代码的意思就是把list[i]和 list[j]的值进行互换。
temp就是一个中转站。
举个例子。

比如有两个笼子,A,B。
A里面有一只老虎,B里面一只狮子,每个笼子内只能存在一个动物。现在要把A里面放狮子,B里面放老虎,怎么办?
此时我们就需要第三个笼子C帮忙了。

  1. 我们把老虎先放到C笼子里,此时A笼子就空了。

  2. 此时狮子就可以放到A笼子里了,B笼子就是空了。

  3. 最后把c笼子的老虎放到B笼子里了。

temp就是笼子c,A,B就是笼子A,B。
上面问为什么要互换,因为是排序啊。

list里的元素是1,3,2,5
当2和3进行比较的时候,肯定要互换位置。

迷茫

把数组中i和j索引的元素互换一下。

洪涛

就是将两个数交换一下,用temp作为容器存储一个值,因为list[i]=list[j]; 这样的话list[i]的值就会被list[j] 覆盖掉 因为要先用temp把 list[i] 的值放进去 这样list[j] 就能等于list[i] 的值,两个数就进行了交换

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!