JAVA-初步认识-第五章-数组-常见操作-排序位置
一.
本节是接着前面的冒泡排序的两种书写格式而来的,是以视频中的两种书写格式为基础讲解的,对于我自己琢磨的不适合。注重视频中讲解的思想。
视频中两种书写格式中,内循环都是一样的,为了他提高复用性,将相同的内循环里的执行语句给功能化。
→上面理解错了,无论是选择排序还是冒泡排序,有一个通用的操作,就是调换不同索引位置上的数据。
这里是对调换数组中两个角标上数据的操作进行了功能化。重点
排序最基本的功能是调换位置。交换位置函数的输入是对数组中的两个数据进行位置转换,数组和两个角标的数据都是不确定的,因此形参有三个。
二. 深入研究两种排序的源代码书写
经过DOS检验没有问题。
这里再对冒泡排序内循环语句的书写做一个解析,(这个数组操作的这一块知识点,均是建立在循环结构嵌套for语句的基础上的,所以之前怎么分析嵌套结构的书写的,这里依旧这样做)。
我们分析一下,这个冒泡排序的嵌套for语句书写的由来。
0-5的遍历中,其中的对比是0-1,1-2,2-3,3-4,4-5,得到的最大值放置在角标5的位置中。
0-4的遍历中,其中的对比是0-1,1-2,2-3,3-4,得到的最大值放置于角标4的位置中。
0-3的遍历中,其中的对比是0-1,1-2,2-3,得到的最大值放置于角标3的位置中。
0-2的遍历中,其中的对比是0-1,1-2,得到的最大值放置于角标2的位置中。
0-1的遍历中,其中的对比是0-1,得到的最大值放置于角标1的位置中。
我突然觉得x控制的外循环,和角标的关系不大,只是控制几轮遍历而已。反倒是内循环的y和角标关系密切,毕竟要利用y来做不同角标数据的对比。内循环每次从0开始对比,因此y的初始表达式为y=0,每次对比的数目,