算法题--冒泡排序
Posted 昊小邦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法题--冒泡排序相关的知识,希望对你有一定的参考价值。
日常生活中充斥着各种各样的排行榜, 如果数量不是很多的话, 那仅靠人力就可以选择出来, 但在IT领域, 面对着庞大的数据量, 必须要用到机器来帮助人们做出选择. 这时就需要用到排序的算法. 这一期, 博主给大家分享一个经典的排序算法--冒泡排序.
如图是一串被打乱了的数字. 需要你按从小到大的顺序排列好. 如果是你, 你会怎么做呢? 不妨先想十秒钟.
我猜你会这样做, 先把1拿出来放到第一个位置, 然后把2拿出来放到第二个位置, 然后把3拿出来放到第三个位置, 直到排完序. 如果你是这样想的, 那恭喜你, 已经掌握了冒泡的精髓. 接下来就是要把我们的思维转变为代码, 来让机器执行.
首先我们要做的就是把最小的数字1放到最前边. 因为机器只能两两比较大小. 不能直接得知一堆数字中哪个最小, 所以我们需要这样做:
从末尾向前进行两两比较, 如果前一个数字大于后一个数字, 就将两者位置对调. (思想核心)
这样一圈下来就把最小的数字1选到前面了. 一共有8个数字, 也就是重复7次相同的操作就可以实现数字的排序了. 这就是冒泡排序. 因为数字的这种操作特别像水中的泡泡从瓶底升上来一样, 所以起了这个名字.
如果你学会了, 那博主不得不恭喜你, 已经具备了一点程序员的思维了. 下一期我们继续讲解新的排序算法. 跟随博主一起领略不同思维的魅力.
以上是关于算法题--冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章