今天分享一下数组的排序:
首先我们随便写一个数组,
第一遍执行时我们发现这个数组发生了越界所以我们再改一次代码
我们这次对我们的循环条件进行了更改,也就是把这个for循环长度进行-1,这样我们的代码就成功运行,但是我们又发现一个问题:
int[] arr = new int[]{12,5,7,6,8,23,5,3,9};
[5, 7, 6, 8, 12, 5, 3, 9, 23]
我们的输出结果并没有达到从小到大的排序。
其实这里可以从我们for循环中发现我们只是进行了一次的最大数的排序
[5, 12, 7, 6, 8, 23, 5, 3, 9]
[5, 7, 12, 6, 8, 23, 5, 3, 9]
[5, 7, 6, 12, 8, 23, 5, 3, 9]
[5, 7, 6, 8, 12, 23, 5, 3, 9]
[5, 7, 6, 8, 12, 5, 23, 3, 9]
[5, 7, 6, 8, 12, 5, 3, 23, 9]
[5, 7, 6, 8, 12, 5, 3, 9, 23]
[5, 7, 6, 8, 12, 5, 3, 9, 23]
所以我们需要再次嵌套一层for循环
然后我们对最内层的的for循环进行了 -x ,其实这里-x的主要目的就是因为当最内层的 for循环结束一次以后
无论如何都会排出来一个最大的数字,也就是说我们下次在进行循环的时候就可以少循环一次用来最后面的排序。
这样我们的代码就写完了基本已经实现了我们随机数组并排序的功能。