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,每次对比的数目,

 

posted @ 2017-09-30 17:07  前锋营  阅读(216)  评论(0编辑  收藏  举报