插入排序
来源:互联网 发布:java连接zookeeper报错 编辑:程序博客网 时间:2024/06/07 03:19
看过算法导论的人都明白,简单一个例子就能说明什么是插入排序。
将一堆顺序打乱的扑克牌堆叠到一起,从上而下一张一张把扑克牌拿到手里。在拿到手里的过程中,按照一定的顺序排列(从左到右,从大到小或者从小到大)。当所有牌被拿完的时候,插入排序就完成了。就是这么简单。
伪代码:
for j = 2 to A.length key = A[j] i = j - 1 while i > 0 and A[i] > key A[i + 1] = A[i] i = i - 1 A[i + 1] = key解释一下这个伪代码。
A代表一个乱序数组
length是这个数组的长度
for循环遍历要插入的数组
while循环将要插入的数和其前面已经拍好序的数进行比较,找到合适的插入位置
总体来说这种算法容易理解,在生活的各个方面也会使用到。比如说我们一般人钱包里的钱币的面值排序(只装100大钞的土豪不算),还有小学生按照高低个排队,课堂按照高低个排座位等等。生活中处处都充满了插入排序。
0 0
- 插入排序-【插入排序】
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- (浮点数及整数)高精度乘除法
- HighCharts源码学习---扩展函数wrap和扩展对象 extendClass
- S3C2440存储控制器和MMU浅析
- DP---求给定矩阵中最大正方形的维度
- git 的基本用法
- 插入排序
- 设计模式六大原则(4):接口隔离原则
- 文章标题
- 【重走普及路】【分治】【经典算法】快速幂
- 贪吃蛇详解Windows编程(一)
- 徒手撸筛选法求素数
- 在windows环境下,使用Eclipse和gcc-Linaro工具链,对BeagleBone进行交叉编译和远程部署
- Boost学习笔记(2)
- BFPRT 算法java实现