栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

冒泡排序的两种写法-2021-09-24

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

冒泡排序的两种写法-2021-09-24



一、前言

    我运用到的编辑器是Anaconda3的JupyterNotebook,python的版本python3.


二、不同写法
1.第一种

代码如下(示例):

source=[1,10,35,61,89,36,55];
length=len(source);
print("冒泡排序:",end='');
for i in range(length):
    print("%3d"%source[i],end="");
print();

for i in range(length,0,-1):  #7 6 5 4 3 2 1
    for j in range(i-1):    #i=7:0 1 2 3 4 5 
        if source[j]> source[j+1]:
            source[j],source[j+1] = source[j+1],source[j];
    print("第%d次排序后的结果:" %(8-i),end='');
    for i in range(length):
        print("%3d"%source[i],end="");
    print();

print("冒泡排序:",end='');
for i in range(length):
    print("%3d"%source[i],end="");
print("n排序结果:",end='');
for j in range(length):
    print("%3d"%source[j],end="");
print();

 运行结果:

冒泡排序:  1 10 35 61 89 36 55
第1次排序后的结果:  1 10 35 61 36 55 89
第2次排序后的结果:  1 10 35 36 55 61 89
第3次排序后的结果:  1 10 35 36 55 61 89
第4次排序后的结果:  1 10 35 36 55 61 89
第5次排序后的结果:  1 10 35 36 55 61 89
第6次排序后的结果:  1 10 35 36 55 61 89
第7次排序后的结果:  1 10 35 36 55 61 89
冒泡排序:  1 10 35 36 55 61 89
排序结果:  1 10 35 36 55 61 89

2.第二种

代码如下(示例):

source=[1,10,35,61,89,36,55];
def bubble_sort(array):
    for i in range(1, len(array)):
        for j in range(0, len(array)-i):
            if array[j] > array[j+1]:
                array[j], array[j+1] = array[j+1], array[j]
    return array
'''
版权声明:本文为CSDN博主「Python碎片」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43790276/article/details/104033622

'''
print(bubble_sort(source))

运行结果:

[1, 10, 35, 36, 55, 61, 89]



冒泡排序原理详细介绍:

我在本网站看到了一篇讲的很详细的文章

地址是:Python实现冒泡排序_Python碎片的博客-CSDN博客_python冒泡排序

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/268932.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号