忆往昔,我在初入it江湖时,头一次interview时被问一个问题就是冒泡算法排序手写,一开始是懵的,为什么呢,因为刚从学校毕业,实习期面试,因为本科学的是信息管理,半路出家,对编程产生兴趣...调用既可,直接原列表排序,不返还新列表;
sorted()是python内置的全局方法来对可迭代的序列排序生成新的序列.即需要参数接收.....
demo如 图1 下:
其原理就是通过列表中的元素两两比较,大的就右移,代码通过2层循环,外层循环决定排序的列表要循环几次,
而内层循环是每一次外循环,会把列表按大到小的顺序的依次把元素大的移动到最右边...,
图1.1这是代码执行的过程,^3^
但是冒泡算法有些缺点,比如一个列表[1, 2, 3, 5, 4]就最后两个元素需要排序,但是上面的代码还是会从头到尾循环一遍!...又称鸡尾酒排序(双向冒泡算法)
让排序一次循环,可以相对左右各排一次,相对基础的冒泡算法来说,对于大量数据的排序来说,可以节省了时间,虽然我两次程序执行时间都是0.1s, 毕竟是小数据嘛!!!