每天一道算法题之冒泡排序

Posted 梦乡尘子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一道算法题之冒泡排序相关的知识,希望对你有一定的参考价值。

'''用python实现冒泡排序'''


'''步骤一先实现最内层找出最大值的方式'''
ls = [99,70, 33, 2,80,64, 55, 9, 13]  # 定义一个随机的列表

def findMax(ls):
    '''第一次寻找最大的数值'''

    ls_len = len(ls)
    for i in range(ls_len-1):
        if ls[i] > ls[i+1]:
            ls[i+1], ls[i] = ls[i], ls[i+1]



findMax(ls)

print(ls)


'''步骤二在步骤一的基础上进行多次循环计算,指导计算结束为止'''
# import random
#
# ls1 = [random.randrange(1,1000) for i in range(10)]
#
# print(ls1)

ls2 = [209, 975, 97, 260, 85, 769, 497, 791, 208, 102]


def maopao(ls):
    '''冒泡排序的完整步骤'''
    ls_len = len(ls)

    for k in range(ls_len):

        for i in range(ls_len -1-k):
            if ls[i] > ls[i + 1]:
                ls[i + 1], ls[i] = ls[i], ls[i + 1]



maopao(ls2)

print(ls2)

以上是关于每天一道算法题之冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

测试萌新必备算法题之:冒泡排序

45期盘点那些必问的数据结构算法题之基础排序

如何实现冒泡排序?

冒泡排序这 2 个小技巧,你了解吗?

你真的会写冒泡排序吗?

兄弟,请撸一个冒泡排序算法?