python简单实现插入排序实例代码
作者:宋宋大人 时间:2021-11-27 14:33:04
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循环下,就会一直循环。
插入排序算法图
来源:https://www.py.cn/jishu/jichu/21960.html
标签:python,插入排序
0
投稿
猜你喜欢
Python处理mysql特殊字符的问题
2024-01-17 01:28:38
python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
2024-01-13 15:19:57
asp获取完整url地址代码
2010-03-22 14:25:00
关于Python字符编码与二进制不得不说的一些事
2022-01-07 14:56:46
更正确的asp冒泡排序
2024-04-22 13:04:10
python GUI库图形界面开发之PyQt5美化窗体与控件(异形窗体)实例
2023-07-19 00:34:06
Go中time.RFC3339 时间格式化的实现
2024-02-07 21:24:55
用户不需要信息快餐
2009-02-25 12:34:00
python制作的天气预报小工具(gui界面)
2022-04-03 17:20:42
Python 网页请求之requests库的使用详解
2021-01-30 23:42:06
深入JDBC sqlserver连接写法的详解
2024-01-19 12:47:28
MySQL如何快速修改表的表结构
2024-01-15 13:51:36
python绘制多个曲线的折线图
2021-08-01 13:58:52
python 批量修改/替换数据的实例
2021-03-15 14:18:36
修改MYSQL最大连接数的3种方法分享
2024-01-21 10:33:44
JS实现将Asp.Net的DateTime Json类型转换为标准时间的方法
2024-04-18 10:03:09
mysql 5.7.13 安装配置方法图文教程(linux)
2024-01-27 20:46:37
如何在asp中创建DSN?
2009-11-14 20:46:00
python实现按任意键继续执行程序
2021-02-12 12:47:10
Python根据文件名批量转移图片的方法
2023-03-14 15:00:21