Python实现插入排序
来源:互联网 发布:阿里云域名修改dns 编辑:程序博客网 时间:2024/06/03 14:00
插入排序(Insertion Sort):
插入排序是一种简单直观的排序算法。
工作原理:通过构建有序序列,对于未排序的数据,在已排序序列中从后向前进行扫描,找到相应位置并插入。插入排序,在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。
Pyhton代码实现:
# 插入排序# order 默认为True 表示升序;False 表示降序def insert_sort(value, order=True): if not isinstance(order, bool): raise TypeError("order 类型错误") for x in range(1, len(value)): for y in range(x, 0, -1): if order: if value[y] < value[y-1]: value[y], value[y-1] = value[y-1], value[y] else: if value[y] > value[y - 1]: value[y], value[y - 1] = value[y - 1], value[y] return valueinsert_sort([4, 2, 6, 1, 9], False)
时间复杂度:
最坏时间复杂度:O(n)(升序排序,序列已经处于升序状态)
最坏时间复杂度:O(n^2)
稳定性:稳定
动态图片演示:
工作原理
阅读全文
1 0
- python实现插入排序
- python实现插入排序
- Python 实现插入排序
- Python实现插入排序
- python实现插入排序
- python实现插入排序
- 插入排序-python实现
- Python实现插入排序
- Python实现插入排序
- python实现插入排序
- python 实现插入排序算法
- 用python实现插入排序
- 用Python实现插入排序
- 插入排序之python实现
- Python 插入排序算法实现
- 直接插入排序 Python实现
- 用python实现插入排序
- 插入排序InsertionSort(Python实现)
- 1秒钟,能做什么?
- 又来了,日本出版社竟是这样吸引死宅学编程的
- Linux Shell 流程控制语句实例
- 第二讲 JDK安装与配置与说明
- 由JVM引发的思考_JVM参数配置
- Python实现插入排序
- List<?>和List<T>的区别?
- 那些互联网IT岗位的招聘潜台词,能看到说明你是历经磨难的老司机
- SpringMVC入门笔记(一)
- 「吃鸡」游戏火爆背后,谁来给服务器降降温?
- 配电房来了个傻员工,改变了所有聪明的员工!
- 优先队列优化的 Dijkstra算法
- 改变计算机界的存储解决方案:RAID,30岁生日快乐!
- “数据中心迁移到IDC数据中心”最怕遇到这几个问题