例子 冒泡排序五位数版本 理解过程抓捕数据
原始数据
轮,分析
如何实现排序功能?
- 最大的数放倒数第一
- 第二大的数放倒数第二
- 第三大的数放倒数第三
- 第四大的数放倒数第四
- 乘下的就是最小的数了
小结
五个数据,我们需要经历四轮操作即可
次,分析
以第一轮为例,关注每一次的变化
第1次,索引0与索引1比较
大的在右边,不交换
第2次,索引1与索引2作比较
小的在右边,需要交换
让大的在右边才行
交换过后
第3次,索引2与索引3比较
大的90在右边
两个数据不用交换位置
第4次,索引3与索引4比较
大的90在左边
小的23在右边
位置需要交锦
让大的靠右边
互换后的结果
小结
在第一轮的冒泡中
总数据有五个
我们比较了四次
第1轮,比较4次,总共5个数据
以第二轮为例,关注每一次的变化
当前状态
在第二轮中,我们可以排除掉最后一个最大的数据
只需要处理四个数据的冒泡即可
比较前四个数,让四个数中最大的,排在四个中最右边
即,我们只需要关注下面的四个数即可
比较的过程同前面的情况一样
小结
在第二轮的冒泡中
总数据有四个
我们比较了三次
第2轮,比较3次,总共4个数据
多轮多次比较的数据分析
第几轮 | 参与比较的数字 | 比较几次 | 总数字 |
---|---|---|---|
1 | 5 | 4 | 5 |
2 | 4 | 3 | 5 |
3 | 3 | 2 | 5 |
4 | 2 | 1 | 5 |
5 | 1 | 0 | 5 |
根据数据,寻找规律
- 写出结论