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


Posted in Python onDecember 16, 2020

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简单实现插入排序实例代码的文章就介绍到这了,更多相关python实现插入排序内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python SQLAlchemy基本操作和常用技巧(包含大量实例,非常好)
May 06 Python
在Python中使用SQLite的简单教程
Apr 29 Python
python绘制铅球的运行轨迹代码分享
Nov 14 Python
scrapy爬虫完整实例
Jan 25 Python
python日期相关操作实例小结
Jun 24 Python
选择Python写网络爬虫的优势和理由
Jul 07 Python
django认证系统实现自定义权限管理的方法
Aug 28 Python
Pytorch模型转onnx模型实例
Jan 15 Python
Django+python服务器部署与环境部署教程详解
Mar 30 Python
Selenium自动化测试工具使用方法汇总
Jun 12 Python
Python如何把字典写入到CSV文件的方法示例
Aug 23 Python
python3.7 openpyxl 在excel单元格中写入数据实例
Sep 01 Python
python中函数返回多个结果的实例方法
Dec 16 #Python
python的setattr函数实例用法
Dec 16 #Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
Dec 16 #Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
Dec 16 #Python
python unichr函数知识点总结
Dec 16 #Python
python 模拟登录B站的示例代码
Dec 15 #Python
python 模拟登陆163邮箱
Dec 15 #Python
You might like
PHP中通过语义URL防止网站被攻击的方法分享
2011/09/08 PHP
PHP文章按日期(月日)SQL归档语句
2012/11/29 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
PHP 根据key 给二维数组分组
2016/12/09 PHP
PHP十六进制颜色随机生成器功能示例
2017/07/24 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
[原创]网络复制内容时常用的正则+editplus
2006/11/30 Javascript
来自chinaz的ajax获取评论代码
2008/05/03 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
jquery jqPlot API 中文使用教程(非常强大的图表工具)
2011/08/15 Javascript
一个js导致的jquery失效问题的解决方法
2013/11/27 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
javascript实现非常简单的小数取整功能示例
2017/06/13 Javascript
微信小程序之蓝牙的链接
2017/09/26 Javascript
json数据传到前台并解析展示成列表的方法
2018/08/06 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
关于layui时间回显问题的解决方法
2019/09/24 Javascript
解决vue-photo-preview 异步图片放大失效的问题
2020/07/29 Javascript
vue+高德地图实现地图搜索及点击定位操作
2020/09/09 Javascript
[51:17]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第二场 10月30日
2020/10/31 DOTA
python正则表达式re模块详解
2014/06/25 Python
对python内置map和six.moves.map的区别详解
2018/12/19 Python
PyQt5 QListWidget选择多项并返回的实例
2019/06/17 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
Django 在iframe里跳转顶层url的例子
2019/08/21 Python
python多进程并行代码实例
2019/09/30 Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
2021/01/29 Python
Html5 Geolocation获取地理位置信息实例
2016/12/09 HTML / CSS
HTML5本地存储和本地数据库实例详解
2017/09/05 HTML / CSS
偷看我的初中毕业鉴定
2014/01/29 职场文书
工会主席岗位责任制
2014/02/11 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
五年级作文之劳动作文
2019/11/12 职场文书