• 技术文章 >Python技术 >Python基础教程

    python插入排序的运行过程

    小妮浅浅小妮浅浅2021-10-18 10:25:11原创3901

    为了保证插入后数据仍然有序,需要确定插入数据的位置。

    1、将待排序的数据分为两个区间。

    有序区间和无序区间。初始有序区间只包含一个元素,即数组的第一个元素,其他的是无序区间。

    2、依次从无序区间中选择一个元素,在有序区间中找到合适的插入位置插入,确保排序区间的数据始终有序。

    3、重复这个过程。

    直到无序区间的元素为空,算法结束。

    实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    #encoding=utf-8

    def insert_sort(data_list):

        '''

        无优化版

        '''

        count=0 #统计循环次数

        length = len(data_list)

        for i in range(1,length ): #默认第一个位置的元素是已排序区间,因此下标从 1 开始

            tmp = data_list[i] #待插入的数据

            j = i

            while j > 0: #从已排序区间查找插入位置

                count +=1

                if tmp < data_list[j-1]:

                    data_list[j] = data_list[j-1]  #元素向后移动,腾出插入位置

                else:

                    break

                j -= 1

            data_list[j] = tmp #插入操作

            print(data_list)

        print(f"总循环次数为 {count}")

        return data_list

    以上就是python插入排序的运行过程,希望对大家有所帮助。更多Python学习指路:python基础教程

    本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

    专题推荐:python插入排序
    上一篇:python选择排序算法的性能分析 下一篇:python插入排序的优化

    相关文章推荐

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网