数组与冒泡排序.ppt

上传人:PIYPING 文档编号:11923757 上传时间:2021-10-31 格式:PPT 页数:30 大小:767KB
返回 下载 相关 举报
数组与冒泡排序.ppt_第1页
第1页 / 共30页
数组与冒泡排序.ppt_第2页
第2页 / 共30页
数组与冒泡排序.ppt_第3页
第3页 / 共30页
数组与冒泡排序.ppt_第4页
第4页 / 共30页
数组与冒泡排序.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《数组与冒泡排序.ppt》由会员分享,可在线阅读,更多相关《数组与冒泡排序.ppt(30页珍藏版)》请在三一文库上搜索。

1、JAVA语言程序设计,信息科学与技术学院 王建民,第2章 JAVA语言的基本语法,可随时与我联系!Email:W,-数组,2,本节内容,数组的定义,Excel的基本操作,选择排序,二维数组,4,1,2,3,冒泡排序,2,4.2.1-4.2.3 P131页,3,引入,数组用于同一类型的多个对象进行有效的组织和处理。,先思考这样一个问题:记录50个学生的英语成绩? 这样可行吗? int result1 = 85; int result50 = 89;,2.6 数 组,数组是一种最为常见的数据结构,通过数组可以保存一组相同数据类型的数据,数组一旦创建,它的长度就固定了。 数组的类型可以为基本数据类型

2、,也可以为引用数据类型,可以是一维数据,二维数据,甚至是多维数据。,2.6.1 一维数组,声明一维数组的方式如下: 这两种声明数组格式的作用是相同的。创建数组实质上就是在内存中为数组分配相应的存储空间,有两种方式可以创建数组,一种是通过new关键字创建,另一种是通过“ ”创建,例如:,数组类型 数组标识符; 数组类型 数组标识符;,int months = new int12;/months的长度为12 boolean members = false, true, true, false ;/members的长度为4,一维数组,在访问数组中的元素时,需要同时指定数组标识符和元素在数组中的索引,

3、例如访问上面代码中创建的数组,输出索引位置为2的元素,具体代码如下: 执行这段代码,输出的内容为“0”和“true”,在通过new关键字创建数组时,得到的数组并没有被初始化,int型数组默认数组元素均为0,而通过“ ”创建数组的同时就初始化了数组。,System.out.println(months2); System.out.println(members2);,一维数组,如果需要为数组中的某个元素赋值,方式如下: 如果需要获得一维数组的长度,可以通过下面的方式:,months2 = 68; members2 = false;,System.out.println(months.length

4、);/ 输出值为12 System.out.println(members.length);/ 输出值为4,二.冒泡排序,要点解析 排序是指将一组无序的数据元素调整为一个从小到大或者从大到小的有序序列。 排序是计算机程序设计中的一类重要运算。 在实际工作中,我们经常要将数据进行比较、排序,以便对已排序的数据进行检索。例如:学生的高考成绩需要排序后,才能进行录取工作。 冒泡排序法就是在排序的时候,让较大的元素往上“冒”,即从元素的开始位置起,对相邻的两个元素进行比较,若第i个元素大于第(i+1)个的元素,则两元素互换,比较完所有的元素后,最大的元素将“冒”到顶部。重复比较和交换剩下未排序的数字,

5、直到全部数字“冒”出为止。这很像水里的气泡,由此得名。,冒泡排序,原始次序:,4,3,5,9,2,冒泡排序,排序开始。 首先我们要把最大的数放在最后那个位置,即下标为4的那个位置。,4,3,5,9,2,下标: 0 1 2 3 4,冒泡排序,首先4与3 进行比较,43,需要交换位置。,4,3,5,9,2,下标: 0 1 2 3 4,冒泡排序,4和3交换位置,大的“泡泡”往后冒。,3,4,5,9,2,下标: 0 1 2 3 4,冒泡排序,4与5 进行比较,45,不需要交换位置。,3,4,5,9,2,下标: 0 1 2 3 4,冒泡排序,5与9进行比较,59,不需要交换位置。,3,4,5,9,2,下

6、标: 0 1 2 3 4,冒泡排序,9与2进行比较,92,需要交换位置。,3,4,5,9,2,下标: 0 1 2 3 4,冒泡排序,9和2交换位置,大的“泡泡”往后冒。,3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,最大的“泡泡”冒到了最后,即下标为4位置的数已经确定了。,3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,第二轮“冒泡”开始,冒泡结束后应确定下标为3的数。,3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,第二轮。,3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,第二轮。,3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,第二轮。,

7、3,4,5,2,9,下标: 0 1 2 3 4,冒泡排序,第二轮结束,确定位置为3的数。,3,4,2,5,9,下标: 0 1 2 3 4,冒泡排序,第三轮“冒泡”开始,冒泡结束后应确定下标为2的数。,3,4,2,5,9,下标: 0 1 2 3 4,冒泡排序,第三轮。,3,4,2,5,9,下标: 0 1 2 3 4,冒泡排序,第三轮。,3,4,2,5,9,下标: 0 1 2 3 4,冒泡排序,第三轮结束,确定位置为2的数。,3,2,4,5,9,下标: 0 1 2 3 4,冒泡排序,第四轮“冒泡”开始,冒泡结束后应确定下标为1的数。,3,2,4,5,9,下标: 0 1 2 3 4,冒泡排序,第四轮结束,确定位置为1的数。,2,3,4,5,9,下标: 0 1 2 3 4,冒泡排序,整个冒泡结束,数组内存储的数字已经按从小到大的顺序排列完毕。,2,3,4,5,9,下标: 0 1 2 3 4,冒泡排序,要点解析 先用数组保存需要排序的一组数字,然后用双重循环语句实现数字排序,最后再按从小到大的顺序打印出来。 交换数组元素值的方法,好比要交换装牛奶和啤酒的杯子,需要第三个空杯子倒腾。 temp = intArrpair-1; intArrpair-1 = intArrpair; intArrpair = temp; 例:BubbleSort.java,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1