0
点赞
收藏
分享

微信扫一扫

Python算法之冒泡排序

# 创建一个列表,里面随机排列着一些数字

num_list = [2, 5, 8, 9, 3, 44, 7]

# 冒泡排序算法
for j in range(len(num_list) - 1):             # 外循环次数是要排序的数字个数减去1
    for i in range(len(num_list) - 1 - j):     # 内循环的次数是外循环次数由大到小排列
        if num_list[i] < num_list[i+1]:        # 用i的值替换掉列表索引值
            num_list[i], num_list[i+1] = num_list[i+1], num_list[i]
print(num_list)

冒泡排序算法本质上就是将列表中两项依次对比,例如:这里有四个数【2,3,1,4】。先把第一项跟第二项对比,发现2比3小,那么就不交换位置,接下来继续对比第二项跟第三项,发现3比1大,那么就交换一下位置,继续对比第三项跟第四项,因为已经交换了位置,那么第三项就是3,跟4对比发现3比4小,不用交换位置,那么我们就得到了这样的一组数【2,1,3,4】。这样我们就已经确定出了最大的那个数字4。接下来再重复对比,就会得到【1,2,3,4】这样的升序数列了。这就是冒泡排序。我们来用Python来编写一下。

举报

相关推荐

0 条评论