Cpp class exercise 4:修订间差异
外观
无编辑摘要 |
|||
| 第94行: | 第94行: | ||
【例4-2】是按从小到大排序的,如果要改成从大到小排序,应该怎么修改? | 【例4-2】是按从小到大排序的,如果要改成从大到小排序,应该怎么修改? | ||
== 知识点 == | |||
=== 数组的赋值方式 === | |||
方法一:逐个赋值。注意索引值从0开始。 | |||
方法二:批量赋值。 | |||
=== 数组的遍历 === | |||
1、获得数组的长度 | |||
2、使用循环语句,逐个访问数组的元素。 | |||
=== 冒泡算法 === | |||
假设共有10个数 | |||
'''第一轮:''' | |||
1、从第1个数开始,将第1个数和第2个数比较,如果第1个数比第2个数大,交换两者。 | |||
2、将第2个数和第3个数比较,如果第2个数比第3个数大,交换两者。 | |||
3、将第3个数和第4个数比较,如果…… | |||
…… | |||
9、将第9个数和第10个数比较,如果第9个数比第10个数大,交换两者。 | |||
经过这一轮的比较,最大的数就是第10个。 | |||
'''第二轮:''' | |||
与第1轮相同(可以只比较到第9个数)经过比较,最大的数是第10个,第二大的数是第9个。 | |||
'''第三轮:''' | |||
与之前的相同(可以只比较到第8个数),经过比较,最大的数是第10个,第二大的数是第9个,第二大的数是第8个。 | |||
'''第十轮:''' | |||
与之前的相同(可以只比较到第2个数)。 | |||
到此,经过不断比较和交换,最小的数不断上升,大的数逐个下沉,完成了从小到大的排序。 | |||
整个过程像气泡上升一样,所以也称为“�冒泡排序”。 | |||