• sorted_一个函数秒杀冒泡排序算法和选择排序


    sorted一招杀

    a = [3,9,12,4,5,7,8,110]
    print(sorted(a,reverse=True))# true为降序
    print(sorted(a,reverse=False))# revers= false为升序
    print(sorted(a))#默认是false升序排列


    Bubble_sort
    下面看看坑死人无数的冒泡排序
    内循环和外循环
    每次循环依次比较大小并来回挪坑,直到把目标值放入设定坑
    再剩下的那堆继续如上操作
    圈复杂度O(n²)
    import  time
    def bubble_sort(a):
    time1 = time.time()
    for i in range (len(a)-1,0,-1):
    for j in range (i):
    if a[j] > a[j+1]:
    a[j],a[j+1] = a[j+1],a[j]
    time2 = time.time()
    print(a)
    print(time2 - time1)
    a = [9,15,7,2,1]
    bubble_sort(a)
    select_sort
    优化一下下,因为有人说读比写节约资源,那么选择排序登台
    我每一轮找最值,然后只交换最值与既定坑值
    圈复杂度还是O(n²)
    #比较n-1次;最多交换n-2次
    # 算法不稳定,优势较冒泡读比写节约资源
    '''
    首先在未排序的序列中找到最大(小)元素
    存放到排序序列的起(终)位置
    再从剩余未排序元素中继续寻找最大(小)元素,然后放在已排序序列的末尾或前面~
    '''
    def select_sort(a):
    for i in range (len(a)-1):
    #动态标记最小索引位置
    min_index = i
    for j in range (i+1,len(a)):
    if a[j] < a[min_index]:#每一轮找一次最小值,找到后记录下最小值索引值
    min_index = j
    if min_index != i:#如果最小值索引值与预设不一致,将预设位数与本轮比较最小值做交换
    a[i],a[min_index] = a[min_index],a[i]
    return a
    a = [99,123,2,6,9527]
    select_sort(a)
    print(a)
  • 相关阅读:
    作业题---设计一个类,求和的方法,求乘积的方法
    PHP-----预定义数组和数组的函数
    PHP-----指针遍历
    PHP------定义数组,取值数组和遍历数组
    PHP---------生成随机数,日期时间函数
    PHP的字符串处理
    PHP的正则表达式常用应用
    PHP的正则表达式
    PHP---函数
    PHP分页查询中的条件查询
  • 原文地址:https://www.cnblogs.com/digitalNatives/p/10582807.html
Copyright © 2020-2023  润新知