八大排序之冒泡排序

冒泡排序是一个很直观的算法,代码中,每轮冒泡,都将待排元素中,排最后的一个元素“安置”好。我们可以从后往前迭代,python中for循环,从后往前,迭代整个数组的方法是这样:

for i in range(len(arr)-1, -1, -1):
    ...

对这个语法不熟悉的同学可以去看下python基础的书籍,这里就不赘述。

直接上代码

arr1 = [4, 1, 6, 2, 5, 0]


def bubble_sorting(arr):
    for i in range(len(arr) - 1, 0, -1):
        for j in range(i):
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
    print(arr)


bubble_sorting(arr1)

ps

我们在外循环中没有迭代整个数组,放过了数组中的第一个元素,但是在内层的for循环中,又把它拎起来了...

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 12,233评论 1 118
  • 第一章 我们每个人都有自己的系统,在使用这个系统的过程中不断的去完善它优化它。 没有必要一次性把一本书看完,人记住...
    kinfoNg_1998阅读 1,891评论 0 0
  • 机缘巧合,我报了一个塔罗初级培训班。老师谈到,塔罗是身心灵疗愈的课题。这跟我以前认为塔罗是一种占卜工具有很大的区别...
    小田田8585阅读 1,760评论 0 0
  • 夕阳渐渐的在山峦之间移动着,然后慢慢地隐没沉入到大海里,一天就这样的结束了,夜的帷幕就这样被拉下。海面上远处的光斑...
    桃之夭夭未命名阅读 3,649评论 3 1
  • 强迫性重复的意思是,人们会主动的追求重复一些情景,不断的去体验一些感受。 在我们的潜意识里很多时...
    潍坊谷德DDM徐芳阅读 1,504评论 0 1

友情链接更多精彩内容