python简单实现插入排序实例代码

 更新时间:2020年12月16日 14:28:23   作者:宋宋大人  
在本篇文章里小编给大家整理了一篇关于python简单实现插入排序实例代码,有需要的朋友们可以学习参考下。

Python中会遇到很多关于排序的问题,今天小编就带给大家实现插入排序的方法。在Python中插入排序的基本原理类似于摸牌,将摸起来的牌插入到合适位置。具体实现请看本文。

基本原理

类似于摸牌,将摸起来的牌插入到合适位置。

代码:

# -*- coding: utf-8 -*-
'''
插入排序:
  类似于摸牌,从牌堆中摸一张牌,和手中现有手牌比较。若大则放右边,小放左边。

''
def insert_sort(input_list):
  if len(input_list)<=1:
    return input_list
  for right in range(1,len(input_list)): # 开始从牌堆中摸牌
    val = input_list[right]      # 当前摸牌的值
    for left in range(0,right):    # 循环和手中牌进行比较
      if val <= input_list[left]:  # 若<最左边的牌了
        input_list[left+1:right+1]=input_list[left:right]
        input_list[left]=val
        break
  return input_list
if __name__ == '__main__':
  pre_list = [1,6,3,3,7]
  res = insert_sort(pre_list)
  print(res)

易忘点和易错点

a. 不要忘记列表长度为1的情况。

b. 注意break的使用以及位置,是放在if语句下面,如果放到第二层for循环下,就会一直循环。

插入排序算法图

到此这篇关于python简单实现插入排序实例代码的文章就介绍到这了,更多相关python实现插入排序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • pymssql ntext字段调用问题解决方法

    pymssql ntext字段调用问题解决方法

    pymssql是python用来连接mssql数据库的一个类库。该库遵守Python DB API 2.0 标准,并且还附带了一个原生的低阶数据访问模块。
    2008-12-12
  • python实现定时同步本机与北京时间的方法

    python实现定时同步本机与北京时间的方法

    这篇文章主要介绍了python实现定时同步本机与北京时间的方法,涉及Python针对时间的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • Python2.x中文乱码问题解决方法

    Python2.x中文乱码问题解决方法

    这篇文章主要介绍了Python2.x中文乱码问题解决方法,本文解释问题原因、给出了处理办法并讲解了编码解码的一些知识,需要的朋友可以参考下
    2015-06-06
  • jupyter notebook 中输出pyecharts图实例

    jupyter notebook 中输出pyecharts图实例

    这篇文章主要介绍了jupyter notebook 中输出pyecharts图实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 200行python代码实现2048游戏

    200行python代码实现2048游戏

    这篇文章主要为大家详细介绍了200行Python代码实现2048游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • python运行环境在新旧电脑间迁移的三种方法

    python运行环境在新旧电脑间迁移的三种方法

    环境部署或迁移是一项简单而又考验应对能力的一项工作,这篇文章主要给大家介绍了关于python运行环境在新旧电脑间迁移的三种方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • 如何解决Pycharm运行报错No Python interpreter selected问题

    如何解决Pycharm运行报错No Python interpreter selected

    这篇文章主要介绍了如何解决Pycharm运行时No Python interpreter selected问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Python中多线程thread与threading的实现方法

    Python中多线程thread与threading的实现方法

    这篇文章主要介绍了Python中多线程thread与threading的实现方法,很重要的应用,需要的朋友可以参考下
    2014-08-08
  • Python3的unicode编码转换成中文的问题及解决方案

    Python3的unicode编码转换成中文的问题及解决方案

    这篇文章主要介绍了Python3的unicode编码转换成中文的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • pandas groupby 用法实例详解

    pandas groupby 用法实例详解

    在日常数据分析过程中,经常有分组的需求。具体来说,就是根据一个或者多个字段,将数据划分为不同的组,然后进行进一步分析,比如求分组的数量,分组内的最大值最小值平均值等,下面我们就来看看pandas中的groupby怎么使用,需要的朋友可以参考下
    2022-11-11

最新评论