zoukankan      html  css  js  c++  java
  • 冒泡排序

    # 冒泡排序:1.外循环 2.内循环 3.内循环需要把已经循环过的不再循环了
    #一维数组排序
    l = [2,5,12,352,1,23,35,63,5,2] # 0-9
    for i in range(len(l)-1): #这个是控制总共需要多少趟
        for j in range(len(l)-1-i): #这个循环是控制交换的 9
            if l[j] > l[j+1]:
                l[j],l[j+1] = l[j+1],l[j]
    print(l)
    

    注意:

    1.多少趟,-1是因为外循环10个元素,其实只需要循环9次就循环完了--可理解为循环总长度

    2.内循环-1也是因为交换循环的时候,从0开始的,等于长度会字段长度溢出,-i是因为外循环过的数,最大的已经排在了最后面了,就不用再排序了,节省时间可以---可理解为循环元素

    3.所以第三步区元素内容的时候要用第二轮循环的j而不是i

    #二维数组排序
    d = {'行者无疆': 246, '王三侠': 210, '大亮': 128, '毛多锁': 418, '追~落日': 3.21, '小文': 416, '瑞峰': 22.13, '尤文奎Alex': 138, '阿梁': 167, '山峰': 0, 'David': 350, '胖胖球': 68.16, '幸福哥': 100, '梁明': 350, '郝明明': 64, '赵宗来': 136.32, '平民之女': 9.66, '王俊兵': 65, '祁棒棒': 79.24, '陈陈': 20, '兔兔': 49, '小了白了兔': 55, '高娃': 100.7, '漠然': 139, '心语': 216, '王成': 183, '陈卫亮': 141.75}
    data1=d.items()
    data = list(d.items())
    print(data1)
    print(type(data1))
    for i in range(len(data)-1): #这个是控制总共需要多少趟
        for j in range(len(data)-1-i): #这个循环是控制交换的 9
            if data[j][-1] < data[j+1][-1]:
                data[j],data[j+1] = data[j+1],data[j]
    count = 1
    #二维数组循环
    for name,km in data:
        print('%s. %s %s'%(count,name,km))
        count+=1
    

      重点和区别再

    if data[j][-1] < data[j+1][-1]:
  • 相关阅读:
    v-chart使用的相关实例
    v-chart从后台获取数据
    算法题-单词搜索
    关于前端开发的一些小经验总结
    element的input中加入可点击的按钮
    vue.js的入门
    链表问题(算法题)
    同构词分类
    最长不降序子列的改编(dp数组的使用)
    Ubuntu安装Git
  • 原文地址:https://www.cnblogs.com/MLing/p/14032218.html
Copyright © 2011-2022 走看看