冒泡排序之Python实现

2019-03-09  本文已影响0人  李大大大大大大大大

写在前面:
最近公司离职了不少QA同事,为填补空缺,开始招人;我问我们老大,你面试的时候一般问啥东西?他说:测试设计与写代码。
写代码?莫非是传说中的手写冒泡排序?(手动斜眼笑)

本人对Python“了解一些”,下面来用Python实现冒泡排序

def bubble_sort(list):
    for i in range(len(list)):  # 计算该列表的长度
        for j in range(i + 1, len(list)):  # 拿剩余的数字进行遍历
            if list[i] > list[j]:  # 两两相比,如果大于就交换位置,如下交换语句
                list[i], list[j] = list[j], list[i]  # 这里是py的交换位置
        print(list)


if __name__ == '__main__':
    numbers_list = [9, 8, 4, 2, 1, 19, 13, 12]
    bubble_sort(numbers_list)

输出结果:

[1, 9, 8, 4, 2, 19, 13, 12]
[1, 2, 9, 8, 4, 19, 13, 12]
[1, 2, 4, 9, 8, 19, 13, 12]
[1, 2, 4, 8, 9, 19, 13, 12]
[1, 2, 4, 8, 9, 19, 13, 12]
[1, 2, 4, 8, 9, 12, 19, 13]
[1, 2, 4, 8, 9, 12, 13, 19]
[1, 2, 4, 8, 9, 12, 13, 19]

Process finished with exit code 0


其实它的原理就是循环遍历列表,两两比较,获取最小值放到列表首位......

上一篇下一篇

猜你喜欢

热点阅读