python冒泡排序简单实现方法

Python026

python冒泡排序简单实现方法,第1张

python冒泡排序简单实现方法

这篇文章主要介绍了python冒泡排序简单实现方法,实例分析了Python冒泡排序的简单实现技巧,具有一定参考借鉴价值。

分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/pythonimportrandomdefbubble_sort(data): length=len(data) foriinrange(len(data)-1): forjinrange(len(data)-1):if(data[j] <data[j+1]):tmp=data[j]data[j]=data[j+1]data[j+1]=tmpr=random.Random()data=[]forninrange(0,20): data.append(r.randint(1,300))printdata,len(data)bubble_sort(data)printdata

运行结果如下:

[115, 14, 246, 125, 94, 78, 275, 163, 64, 72, 245, 1, 97, 53, 86, 270, 137, 69, 74, 182] 20

[275, 270, 246, 245, 182, 163, 137, 125, 115, 97, 94, 86, 78, 74, 72, 69, 64, 53, 14, 1]

希望本文所述对大家的Python程序设计有所帮助。

Python冒泡排序注意要点实例详解

文给大家介绍了python冒泡排序知识,涉及到冒泡排序主要的细节问题,本文通过实例代码给大家讲解,介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧

冒泡排序注意三点:

1. 第一层循环可不用循环所有元素

2.两层循环变量与第一层的循环变量相关联。

3.第二层循环,最终必须循环集合内所有元素。

示例代码一:

1.第一层循环,只循环n-1个元素。

2.当第一层循环变量为n-1时,第二层循环所有元素。

s = [3, 4, 1, 6, 2, 9, 7, 0, 8, 5]

# bubble_sort

for i in range(0, len(s) - 1):

for j in range(i + 1, 0, -1):

if s[j] <s[j - 1]:

s[j], s[j - 1] = s[j - 1], s[j]

for m in range(0, len(s)):

print(s[m])

示例代码二:

1.第一层循环所有元素。

2.第二层也循环所有元素。

s = [3, 4, 1, 6, 2, 9, 7, 0, 8, 5]

for i in range(0, len(s)):

for j in range(i, 0, -1):

if s[j] <s[j - 1]:

s[j], s[j - 1] = s[j - 1], s[j]

for m in range(0, len(s)):

print(s[m])

以上所述是小编给大家介绍的python冒泡排序算法注意要点,希望对大家有所帮助

排序是计算机程序设计中的一种重要操作,它的功能是将一个数据元素的任意序列,重新排列成一个关键字有序的序列。那么python列表排序算法有哪些?本文主要为大家讲述python中经常用的三种排序算法:冒泡排序、插入排序和选择排序。

1、冒泡排序

冒泡排序,Bubble

Sort,是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢浮到数列的顶端。

2、插入排序

插入排序,Insertion

Sort,是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前的扫描过程中,需要把已排序元素逐步向后挪位,为最新元素提供插入空间。

3、选择排序

选择排序,Selection

Sort,是一种简单直观的排序算法。它的工作原理如下:首先在未排序序列中找到最小、最大元素,存放到排序序列的起始位置,然后再从剩余未排序元素中继续寻找最小、最大元素。放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。