zoukankan      html  css  js  c++  java
  • 20190426-选择排序算法

    它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。

    算法:

    step1:先写算法查找数组中最小的元素

    def find_smallest_element(arr):
        smallest_element=arr[0]
        smallest_index =0
        for i in range(1,len(arr)):
            if arr[i]<smallest_element:
                smallest_element=arr[i]
                smallest_index =i
        return smallest_index

    step2:将第一步找的的元素插入一个新的数组,然后循环n-1次即可排序完成n为数组的长度。

    def select_order(arr):
        new_arr =[]
        for i in range(len(arr)):
            smallest = find_smallest_element(arr)
            new_arr.append(arr.pop(smallest))
        return new_arr

    arr.pop(index)返回数组对应位置的元素。随着排序的进行,每次查找最小的元素要进行的遍历逐渐减小,最后一次需要检查的元素仅一个。选择排序是一种灵巧的排序方法,但的速度不快。

  • 相关阅读:
    web Function函数
    web语言发展史
    用户正则
    字符串替换
    css单位
    JavaScript DOM&BOM
    css颜色的设置
    pseudo-class与pseudo-element的不同点与相同点
    对css语法中position值的理解
    API
  • 原文地址:https://www.cnblogs.com/hyj691001/p/10768698.html
Copyright © 2011-2022 走看看