成都网站建设设计

将想法与焦点和您一起共享

python插入排序运行过程的示例分析

这篇文章主要介绍了python插入排序运行过程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

在余庆等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、网站建设 网站设计制作按需网站制作,公司网站建设,企业网站建设,成都品牌网站建设,营销型网站建设,成都外贸网站建设,余庆网站建设费用合理。

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

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

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

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

3、重复这个过程。

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

实例

#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插入排序运行过程的示例分析
URL链接:http://chengdu.cdxwcx.cn/article/ieohdp.html