zoukankan      html  css  js  c++  java
  • python排序算法的实现-选择

    1.算法:

    对于一组关键字{K1,K2,…,Kn}, 首先从K1,K2,…,Kn中选择最小值,假如它是 Kz,则将Kz与 K1对换;

    然后从K2,K3,… ,Kn中选择最小值 Kz,再将Kz与K2对换。

    如此进行选择和调换n-2趟,第(n-1)趟,从Kn-1、Kn中选择最小值 Kz将Kz与Kn-1对换,最后剩下的就是该序列中的最大值,一个由小到大的有序序列就这样形成。

    2.python  代码:

    def selection_sort(list2):
        for i in range(0, len (list2)):
            min = i
            for j in range(i + 1, len(list2)):
                if list2[j] < list2[min]:
                    min = j
            list2[i], list2[min] = list2[min], list2[i]  # swap

    结果为:[2, 3, 4, 21, 33, 44, 45, 67]

    3. 时间复杂度  O(n*n)

  • 相关阅读:
    FastDFS的简单使用
    KindEditor的简单使用
    rpc
    SDS——动态字符串
    图的深度优先遍历和广度优先遍历
    innodb和myisam原理
    cap理论
    冒泡排序
    桥接模式
    适配器模式
  • 原文地址:https://www.cnblogs.com/yupeng/p/3414866.html
Copyright © 2011-2022 走看看