算法学习-插入排序
来源:互联网 发布:淘宝女装销量排行榜 编辑:程序博客网 时间:2024/05/18 00:09
一、插入排序
对于少量的排序,它是一个有效的算法,插入排序的工作方式,就像我们打扑克的时候拿牌的过程,把新加入的牌插入到合适的位置,手中的牌总是排序好的。
排序稳定性:
如果在待排序的记录序列中有多个数据元素的关键字值相同,经过排序后,这些数据元素的相对次序保持不变,则称这种排序算法是稳定的,否则称之为不稳定的。
伪代码:
INSERTION-SORT(A)//for j=2 to A.length{key= A[j]i=j-1while i>0 and A[i]>key{A[i+1]=A[i]i=i-1}A[i+1]=key}
动态过程理解:
JAVA代码实现:
public class Insertion{public static void sort(Comparable[] a){int N=a.length;for(int i=1;i<N;i++){for(int j=i;j>0 && less(a[j],a[j-1]);j--){exch(a,j,j-1);}}}}
性能分析
0 0
- 算法学习-插入排序
- 【算法学习】排序算法 - 插入排序
- 算法学习(三)--插入排序
- 算法学习笔记----插入排序
- 插入排序(算法学习系列)
- 算法学习之:插入排序
- 算法学习-----插入排序(Java)
- 算法学习----->Insertsort(插入排序)
- [算法学习]20150409.1.插入排序
- 算法学习之插入排序
- 算法学习(一)-插入排序
- 算法学习笔记--插入排序
- 插入排序-算法导论学习
- 算法学习 - 插入排序,希尔排序
- 经典算法学习:排序之插入排序
- 算法学习之排序(1)--插入排序
- 算法系统学习-1排序-插入排序
- [学习笔记]排序算法之插入排序
- 让年轻程序员少走弯路的14个忠告
- (C++面试题)请实现strcpy、memcpy函数
- Learn Lua in 15 Minutes 整理
- Process连续运行多个程序
- 1WiFi建设无线网络城市
- 算法学习-插入排序
- JSF EL简介
- Sum Root to Leaf Numbers
- 字典树的痛苦学习经历
- 1.29使用hibernate链接oracle数据库出现问题并解决
- 莫名其妙错误 锦集1
- 一款模拟CSS3动画的js插件-move.js
- Solaris 11中的变化
- LuaJavaBridge - Lua 与 Java 互操作的简单解决方案