龙空技术网

Python中的关键算法之”冒泡排序“

新精英充电站 178

前言:

当前姐妹们对“python冒泡算法对列表排序”大约比较讲究,大家都需要学习一些“python冒泡算法对列表排序”的相关内容。那么小编同时在网上收集了一些对于“python冒泡算法对列表排序””的相关文章,希望姐妹们能喜欢,我们一起来学习一下吧!

本实战技能将使用冒泡排序,实现数据从小到大的排序。运行程序得到的结果如下图所示。

冒泡排序结果展示图

【技术要点】

本实战技能重点在于冒泡排序,要实现本案例,需要掌握冒泡排序的基本原理。

冒泡排序是一种较简单的排序算法,它会遍历若干次要排序的数列,每次遍历时,都会从前往后依次比较相邻两个数的大小,如果前者比后者大,则交换它们的位置。一次遍历之后,最大的数就在数列的末尾。除了最后一个数外,采用相同的方法对其他数再次遍历时,第二大的数就被排列在最大的数之前。重复以上步骤,直到整个数列没有任何一对数字需要比较为止。冒泡排序图解如下图所示。

冒泡排序图解

【主体设计】

冒泡排序算法流程如下图所示。

冒泡排序算法流程图

实现步骤如下。

Step1:输入需要排序的数组。

Step2:得到需排序的数据个数。

Step3:运用for循环,从前往后遍历。判断相邻两个数的大小,如果前者比后者大,则交换两 个数的位置。

Step4:输出最终的排序,结束程序。

【编程实现】

本实战技能使用PyCharm进行编写,建立相关的源文件【冒泡排序.py】,在界面输入代码。参考下面的详细步骤,编写具体代码,具体步骤及代码如下所示。

Step1:先输入需要排序的数组,使用len( )函数获得序列的长度,输出排序前的序列,代码如下所示。

1. List=[1, 5, 3, 6, 9, 7, 2]

2. n = len(List)

3. print(" 冒泡排序案例 ")

4. print(" 排序前:", List)

Step2:使用for循环,实现冒泡排序。当前一个数大于后一个数,则交换两个数的位置,输出排序后的序列,代码如下所示。

1. for i in range(n - 1):

2. for j in range(n - 1):

3. for j in range(n - i - 1):

4. if List[j] > List[j + 1]:

5. temp = List[j]

6. List[j] = List[j + 1]

7. List[j + 1] = temp

8. print(" 排序后 :", List)

标签: #python冒泡算法对列表排序 #请编程实现一个冒泡排序算法 #python冒泡排序详解