Python-冒泡排序法
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
它重复地走访过要排序的元素列,依次比较两个 相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
冒泡排序算法的原理如下:
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
import datetime
import randomtest_list = list()
for i in range(500):test_list.append(random.randint(1, 1000))
start = datetime.datetime.now()
###########################################################################n = len(test_list)
for i in range(n):for j in range(0, n - i - 1):if test_list[j] > test_list[j + 1]:test_list[j], test_list[j + 1] = test_list[j + 1], test_list[j]###########################################################################
test_list.reverse()
print(test_list)
stop = datetime.datetime.now()
time = (stop - start)
print(time)
算法稳定性
Python-冒泡排序法相关推荐
- python冒泡排序函数_python冒泡排序-Python,冒泡排序
arr = [ 7 , 4 , 3 , 67 , 34 , 1 , 8 ] . def bubble_sort : 最近在学习Python,下面是我的一些笔记 冒泡排序 实现思路: 使用双重for循环 ...
- python中怎么比较两个列表的大小_python中对列表元素大小排序(冒泡排序法,选择排序法和插入排序法)—排序算法...
前言 排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的三种排序算法,选择排序法 ...
- python输入十个数用冒泡排序_python 冒泡排序法
我们先看一个代码: 这段代码的意思是:利用随机整数函数randint()生成1到35的随机数.通过while循环10次,生 成10个这样的随机数.将生成的10个随机数组成一个列表,并用冒泡排序法来对该 ...
- python中对列表元素大小排序(冒泡排序法,选择排序法和插入排序法)—排序算法
前言 排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的三种排序算法,选择排序法 ...
- python数组冒泡排序法_python 冒泡排序法
我们先看一个代码: 这段代码的意思是:利用随机整数函数randint()生成1到35的随机数.通过while循环10次,生 成10个这样的随机数.将生成的10个随机数组成一个列表,并用冒泡排序法来对该 ...
- 冒泡排序python例题_零基础学python 15 经典算法:冒泡排序法(课后习题答案)...
这节课我们对于冒泡排序法的课后习题进行一下解答: 回顾一下我们的题目: 上节课我们学习的冒泡排序法,是让我们的list从小到大进行排列,这次我们的任务是,请对冒泡排序法进行一定的修改,加一个参数,让它 ...
- 冒泡排序法 - python版详解
冒泡排序法 冒泡排序(英语:Bubble Sort)是一种简单的排序算法.它重复地遍历要排序的数列,每次比较相邻两个元素的大小,如果list[i] > list[i+1]就把他们交换位置.遍历数 ...
- 冒泡排序法定向冒泡排序法的Python实现
冒泡排序法 冒泡排序法:每轮对相邻的两者进行比较,若顺序不对,则进行位置互换,每轮都将使每轮的 最后一位是该轮的大数. 比如在数列:[71, 1, 14, 78, 75, 38, 10, 49, 40 ...
- 抢红包算法 c++_十大排序算法(一):冒泡排序法
作者:绿皮长条瓜 目录 一.算法介绍 二.MATLAB实现 三.两个例子 一.算法介绍 冒泡排序(Bubble Sort)算法是一种计算科学领域的较简单的排序算法.它重复地走访过要排序的元素列,如果顺 ...
- Python 冒泡法
Python 冒泡法 Introduction 冒泡法,也称为冒泡排序,是一种简单的排序算法,它重复地遍历要排序的列表,比较每对相邻的项,并在必要时交换它们的位置. 这个算法从底部开始,因此较小的值会 ...
最新文章
- android图片压缩总结
- 轴只显示5个刻度_组团投资5亿元!武平集中签约5个新型显示产业链投资项目
- map.js的编写(js编写一个对象的方式)
- matlab eval 不显示,matlab中 eval(command); 运算符无效的问题
- 1221. 分割平衡字符串
- mybatis generator使用_SpringBoot整合Mybatis实现自动生成代码 || 附阿里P8独家SpringBoot视频资料...
- Java 中关键字transient引出序列化与反序列化
- FLEX中restrict限定TextInput输入
- [数字dp] hdu 3271 SNIBB
- 「罗马人的故事I 罗马不是一天建成的」读后感
- 统计软件测试应用,应用统计过程控制监控软件测试过程.PDF
- 大量监控视频如何存储?
- 【python】词云图制作
- ecshop模板如何修改详细图解
- 平板电脑如何刷linux,平板电脑刷windows的方法是什么_如何把平板刷windows图文步骤...
- 【1-2】非本人智慧结晶,有疑问请咨询相关技术人员!
- SAP中通过BOM物料清单应用程序配置来解决BOM清单显示及导出问题实例
- iOS开发-常用的数学方法
- 网易云信短信接口java_网易云短信接口测试
- Optimizing App Startup Time