Python|冒泡算法快速入门

Posted 算法与编程之美

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python|冒泡算法快速入门相关的知识,希望对你有一定的参考价值。

本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。

引言

在生活中,水中的气泡常常冒出水面,似乎它们会自动排序,其实在算法排序中,也有着一种类似的算法,这就是今天要引入的算法-“冒泡算法”。

冒泡算法,顾名思义,就是保证每个数据像水中的水泡一样,一点一点的向前方挪去,而“不同大小的水泡”的顺序不是随机的。

问题描述

冒泡排序是一种计算机科学领域的较简单的排序算法。原理如下:

1. 先比较相邻的元素。如果第一个比第二个大,就交换他们两个。

2. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

3. 重复以上2的步骤,直到没有元素可以进行比较。

注意,冒泡排序的平均时间复杂度为O(n²)

例如:要比较排序数组:[10,1,35,61,89,36,55](升序)

首先首次排序,10比1大,因此交换位置,,之后10和35比较,10小于35,不交换位置,35与61比较,前者小于后者,不交换位置,61和89比较,61小于89,不交换位置,以此类推,直到完成首次排序,数组顺序为[1,10,35,61,36,55,89],

发现数组顺序仍然不对,因此进行第二次排序:1和10比较,1小于10,不交换位置,10

以上是关于Python|冒泡算法快速入门的主要内容,如果未能解决你的问题,请参考以下文章

交换排序之冒泡排序和快速排序

数据结构与算法(Python)-Python快速入门篇2

数据结构与算法(Python)-python快速入门篇1

数据结构与算法(Python)-Python快速入门篇4

数据结构与算法(Python)-Python快速入门篇3

换脸火了,我用 python 快速入门生成模型