
文章插图
图6 算法的特征
算法比较抽象 , 下面讲解一个实际的算法案例 , 让同学们对算法有个感性认识 。 对一组无序的数字进行排序 , 比较经典的排序算法就是冒泡排序 。
3、冒泡排序算法
冒泡排序是将一组数字多趟顺序比较 , 一次比较两个数字 , 如果他们的顺序错误就把他们交换过来 , 小数或(大数)逐渐往上冒 , 当再没有需要交换的数字时 , 说明该组数已经排序完成 。
对下面的一组数用冒泡排序算法 , 并按照从小到大的顺序排序 。

文章插图
排序前的一组数 , 我们称为原始数列 , 每两个数进行一次比较 , 称为一轮比较 。

文章插图
第一轮比较:23与34比较 , 23小于34 , 两个数不用交换位置 。

文章插图
第二轮比较:34与5比较 , 因为34大于5 , 因此34和5交换位置 。

文章插图

文章插图
第三轮比较:34与7比较 , 因为34大于7 , 因此34与7交换位置 。

文章插图

文章插图
第四轮比较:比较34和56 , 因为34小于56 , 两个数不用交换位置 。

文章插图
在前面的四轮比较中 , 从数列左侧的第一个数开始 , 顺序两两比较两个数的大小 , 如果前面一个数比后面一个数大 , 就交换两数的位置 , 直到数列的最后一个数比较完毕 。
这四轮比较下来 , 称为一趟比较 。 如果在该趟比较中 , 存在两个数交换位置的情况 , 就需要进行下一趟比较 , 直到再没有数字进行交换 , 算法结束 。
因为在第一趟比较中 , 存在两数的位置交换 , 因此还需要进行第二趟的比较 。
第二趟比较
第二趟比较也是从数列左侧的第一个数开始 , 顺序两两比较两个数的大小 。 不过第二趟比较就不需要再比较数列右侧的最后一个数了 , 因为在第一趟比较的过程中 , 该数列最大的数已经被交换到数列右侧最后的一个位置了 。

文章插图
第一轮比较:比较23和5 , 因为23大于5 , 因此23和5交换位置 。

文章插图

文章插图
第二轮比较:比较23和7 , 因为23大于7 , 因此23和7交换位置 。

文章插图

文章插图
第三轮比较:比较23和24 , 因为23小于24 , 两个数不用交换位置 。

文章插图
至此 , 第二趟比较完成 。 最后的一个数56就不用比较了 , 因为56在第一趟比较中就已经为自己找到了正确的位置 。
从第三轮的比较结果来看 , 排序已经完成 , 每个数都自己找到了正确的位置 。 已经不需要再进行第三趟比较了 。
- 什么人不适合喝毛尖茶 喝毛尖的好处与坏处
- sk2面霜的功效与作用 面霜的主要作用
- 清华总裁班与清华的关系 清华总裁班是什么意思
- 覆盆子泡酒的功效与作用与主治,覆盆子泡酒的功效与作用覆盆子酒怎么做
- 人体各部位的风水 人体器官与风水的部位
- 玛咖菌营养价值和功效与作用,玛咖菌和玛咖的区别
- 鸡内金的药效功能作用 鸡内金的功效与作用
- 手掌对应五脏六腑图 反射区,手掌与五脏的反射区图片
- 粳糯米的功效与作用 粳米的功效与作用及食用方法
- 仰不愧于天俯不怍于地 风水中仰与俯不同之处
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
