Python 冒泡排序
2015-09-13 19:02
447 查看
冒泡排序(Bubble Sort),是一种较简单的排序算法。
冒泡排序算法原理:
开始时扫描整个序列,在扫描过程中两两比较相邻记录,如果第一个数比第二个数大,就交换他们,这样第一趟下来,最大的记录就会被“沉到”序列的最后面一个位置,第二趟开始扫描除了最后一个元素中的第二大记录并“沉到”倒数第二个位置,重复上述操作,直到n - 1扫描后,整个序列就排好序了。如下图所示:
Python实现冒泡核心代码如下:
该算法的基本语句是双层循环中的比较语句,其时间复杂度为O(n2)。
冒泡排序算法原理:
开始时扫描整个序列,在扫描过程中两两比较相邻记录,如果第一个数比第二个数大,就交换他们,这样第一趟下来,最大的记录就会被“沉到”序列的最后面一个位置,第二趟开始扫描除了最后一个元素中的第二大记录并“沉到”倒数第二个位置,重复上述操作,直到n - 1扫描后,整个序列就排好序了。如下图所示:
Python实现冒泡核心代码如下:
def bubbleSort(list1) : n = len(list1) for i in xrange(n - 1) : #控制比较的趟数 for j in xrange(n - i - 1) : #控制每一趟比较n - i个元素 if list1[j] > list1[j + 1] : #两两比较,前大于后则交换 tmp = list1[j] list1[j] = list1[j + 1] list1[j + 1] = tmp
该算法的基本语句是双层循环中的比较语句,其时间复杂度为O(n2)。
相关文章推荐
- Head First Python 第二章 函数模块&第三章 文件与异常&第四章 持久存储&第五章 处理数据
- python数据挖掘
- python教程
- Python如何记录日志
- python random 从集合中随机选择元素
- ubuntu下python管理
- 利用python,简单的词语纠错
- Python二分查找详解
- IBM SPSS Statistics 与用户自定义 Python 模块的集成及分析
- 利用Sphinx轻松生成python代码的文档
- python使用cookie登陆新浪微博用户信息
- python的with语句
- python函数返回多个值
- python的while语法
- MQTT学习笔记——树莓派MQTT客户端 使用Mosquitto和paho-python
- Python SPSS教程
- Python+OpenCV学习(10)---SURF
- python下载地址到迅雷qq旋风下载
- [原创]python下opencv图像加法测试
- [原创] python下 opencv图像减法测试