首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

冒泡排序python实现_冒泡排序python代码优化

一、什么是冒泡排序 冒泡排序是一种简单的排序算法,它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。...三、冒泡排序的实现代码(python) def mao_pao(num_list): num_len = len(num_list) # 控制循环的次数 for j in range(num_len):...: 冒泡排序过程包含两个操作,比较和交换,因为冒泡排序只会交换相邻的两个元素,所以,每进行一次交换,有序度就增加一。...所以,冒泡排序的执行过程中,总的交换次数是确定的,即为逆序度。...因为不清楚原数据的复杂度 我们代码执行的最大次数由上图红色区域: 假设: 上图代码的平均比较次数为k1,平均交换次数为k2 平均交换次数: k1 = n*(n-1)/4 平均比较次数: k2<n

62930
您找到你想要的搜索结果了吗?
是的
没有找到

java冒泡排序代码_Java冒泡排序

四、java代码实现: package 冒泡排序; import java.util.Arrays; /** * 冒泡排序 * @author chen * */ public class BubbleSort...为了充分利用这一信息,可以在一趟全局扫描中,对每一反序数据对进行局部冒泡排序处理,称之为局部冒泡排序。...局部冒泡排序与冒泡排序算法具有相同的时间复杂度,并且在正序和逆序的情况下,所需的关键字的比较次数和移动次数完全相同。...由于局部冒泡排序和冒泡排序的数据移动次数总是相同的,而局部冒泡排序所需关键字的比较次数常少于冒泡排序,这意味着局部冒泡排序很可能在平均比较次数上对冒泡排序有所改进,当比较次数较少的优点不足以抵消其程序复杂度所带来的额外开销...,而当数据量较大时,局部冒泡排序的时间性能则明显优于冒泡排序。

1.9K61

python冒泡排序算法代码_python冒泡法对10个数排序

Num01–>冒泡排序定义 冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。...冒泡排序算法的运作如下: 1、比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。 2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。...Num02–>冒泡排序详细分析过程 交换过程图示(第一次): 那么我们需要进行n-1次冒泡过程,每次对应的比较次数如下图所示 Num03–>采用Python语言实现 #!.../usr/bin/env python # -*- coding: utf-8 -*- # @Author : xiaoke def bubble_sort(alist): # 结算列表的长度 n =...结果如下: # 原列表为:[54, 26, 93, 77, 44, 31, 44, 55, 20] # 新列表为:[20, 26, 31, 44, 44, 54, 55, 77, 93] Num04–>冒泡排序时间复杂度

44010

java冒泡排序经典代码_Java干货分享:冒泡排序

不管学习什么编程语言,冒泡排序都是每一个走上IT路的小伙伴的必经之路。但是还有好多小伙伴对冒泡排序摸不着头脑,今天知了堂小编就来分享一下经典算法——冒泡排序。...但是冒泡排序究竟是怎么比较数字的大小来排序的呢?其实冒泡排序的原理很简单,把两个挨在一起的数字进行比较大小,大数放在后面,较小的数放在前面。...有小伙伴看到这里或许会问了:“怎么知道冒泡排序要遍历多少遍呢?”...根据上面咱们分享的冒泡排序的过程,可以总结出以下在使用冒泡排序时需要注意的地方: 1、 有n个数,就需要进行n-1次遍历。...相信小伙伴们已经懂得了冒泡排序的原理和排序逻辑,那么下面用代码给小伙伴们分享Java代码是如何实现冒泡排序的。

34810

Python|图述冒泡

引言 在“小鲤鱼历险记”中,小鲤鱼的绝活是吐泡泡,惹得好多人捧腹大笑,其实在数据算法的世界里,也有一个有趣的现象叫冒泡排序。...解决方案 冒泡排序就是交换排序的一种排序方法 百度百科上面冒泡排序的定义,是一种计算机科学领域的较简单的排序算法。...首先冒泡排序其实不是很难,相对于直接排序,冒泡排序的算法程度是比较简单的,因为直接排序一个一个比较大小,这样就会导致算法的时间复杂度就会很大。所以我推荐用冒泡排序。...,所以就进行交换,这就像水的泡泡,而小的数就像水里的泡泡一个一个浮上来,而相对大的数就慢慢沉下去了,所以冒泡排序还是比较有趣的。...结语 以上就是冒泡排序的简单介绍,可能过程不是很详细,但是应该能够初步理解,有些数组用冒泡排序还是要进行很多趟的排序才能够得到结果,但是冒泡排序是一种常用的排序方法。

42620
领券