http://www.yuyong.net

大神为你分享python3实现冒泡排序(Ubuntu18环境)

电脑现已成为我们工作、生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到python3实现冒泡排序(Ubuntu18环境)的问题,如果我们遇到了python3实现冒泡排序(Ubuntu18环境)...

电脑现已成为我们工作、生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到python3实现冒泡排序(Ubuntu18环境)的问题,如果我们遇到了python3实现冒泡排序(Ubuntu18环境)的情况,该怎么处理怎么才能解决python3实现冒泡排序(Ubuntu18环境)带来的困扰呢,对于这样的问题其实我们只需要Ubuntu18 , pycharmpython3.6冒泡是常用的排序方法。实现方法:1:相邻的两个元素进行比较,然后把较大的元素放到后面;2:一趟比较完后最大的元素位于了最后一个位置,如此循环。冒泡算法要遍历n-1趟,时间复杂度较高。例如输入值序列[3, 5, 1, 8, 10]第一趟:[3, 5, 1, 8, 10][3, 1, 5, 8, 10][3, 1, 5, 8, 10][3, 1, 这样就解决了这样的问题,接下来给大家带来python3实现冒泡排序(Ubuntu18环境)的详细操作步骤。

工具/原料

Ubuntu18 , pycharm
python3.6

方法/步骤

冒泡是常用的排序方法。

实现方法:

1:相邻的两个元素进行比较,然后把较大的元素放到后面;

2:一趟比较完后最大的元素位于了最后一个位置,如此循环。

冒泡算法要遍历n-1趟,时间复杂度较高。

例如

输入值序列[3, 5, 1, 8, 10]

第一趟:

[3, 5, 1, 8, 10]

[3, 1, 5, 8, 10]

[3, 1, 5, 8, 10]

[3, 1, 5, 8, 10]

第二趟:

[1, 3, 5, 8, 10]

[1, 3, 5, 8, 10]

[1, 3, 5, 8, 10]

第三趟:

[1, 3, 5, 8, 10]

[1, 3, 5, 8, 10]

第四趟:

[1, 3, 5, 8, 10]

(其实第二趟就已经排序完毕,因此可以优化)

大神为你分享python3实现冒泡排序(Ubuntu18环境)

具体实现:

#!/usr/bin/env python

#-*- coding: utf-8 -*-

#冒泡排序

import os

import random

def bubSort(mbub):

length = len(mbub)

print("元素数量%d" % (length))

for i in range(length - 1):

print("第%d趟开始" % (i))

for j in range(length - i - 1):

# j表示每趟比较的元素范围,每趟排好一个元素,下一趟元素要减去i

print(" 当前元素坐标={} ".format(j), end="")

print(mbub, end="")

print("==> ", end="")

if mbub[j] > mbub[j + 1]:

mbub[j], mbub[j + 1] = mbub[j + 1], mbub[j]

print(mbub, end="")

print(" (交换元素坐标:%d %d 交换元素数值:%d %d)" % (j, j + 1, mbub[j], mbub[j + 1]))

else:

print(mbub, end="")

print(" (未交换)")

print("第%d趟 输出:" % (i), end="")

print(mbub)

#调用程序

if __name__ == '__main__':

# 定义随机数

num = 5

#生成随机列表

current_Num = [random.randint(1,num) for i in range(num)]

# current_Num = [3,5,1,8,10]

print("初始列表:")

print(current_Num)

bubSort(current_Num)

大神为你分享python3实现冒泡排序(Ubuntu18环境)

大神为你分享python3实现冒泡排序(Ubuntu18环境)

运行后结果如下:

第一趟: n-1比对

大神为你分享python3实现冒泡排序(Ubuntu18环境)

第二趟:n-2比对

大神为你分享python3实现冒泡排序(Ubuntu18环境)

第三趟: n-3比对

大神为你分享python3实现冒泡排序(Ubuntu18环境)

第四趟;n-4比对

完成n-1比对,结束并输出结果!

和分析一致。

大神为你分享python3实现冒泡排序(Ubuntu18环境)

注意事项

Ubuntu18 + pycharm环境
python3

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。