排序(一)-插入排序
来源:互联网 发布:js钩子函数作用 编辑:程序博客网 时间:2024/05/22 10:58
稳定性:stable sort
空间:In-place sort
最优复杂度:当输入为顺序时,复杂度为O(n)
最差复杂度:当输入为逆序时,复杂度为O(n^2)
伪代码:
Insertion_Sort(A){ for i=2 to n j = i-1 key = A[i] while j>0 && A[j]>key A[j+1] = A[j] j-- A[j+1] = key}Java代码:
import java.util.Arrays;public class Main {public static void main(String[] args){Main m = new Main();int[] A = {1,2,3,5,4,7,9,1,2,5,3,2,1};m.insertionSort(A);System.out.print(Arrays.toString(A));//输出:[1, 1, 1, 2, 2, 2, 3, 3, 4, 5, 5, 7, 9]}public void insertionSort(int[] A){for(int i = 1; i < A.length; ++i){int j = i - 1;int key = A[i];while(j >= 0 && A[j] > key){A[j+1] = A[j];--j;}A[j+1] = key;}}}
0 0
- 排序(一)-插入排序
- 排序算法(一):插入排序
- 排序算法一:插入排序
- 排序(一)---直接插入排序
- 排序一 直接插入排序
- 排序(一)----插入排序
- 排序一:直接插入排序
- 【排序一】插入排序(直接插入排序&&希尔排序)
- 内部排序(一)------插入排序、交换排序
- 插入排序一(直接插入排序)
- 算法一:插入排序
- (一)插入排序
- 插入排序(一)
- (一)插入排序
- 排序算法一(冒泡排序、选择排序、插入排序)
- 排序算法一(冒泡排序、选择排序、插入排序)
- 排序算法(一):直接插入排序
- 内部排序总结(一)插入排序
- 安装Ember出现错误的解决方法
- 基于Spring MVC的Hello World例子教程
- 在 JAVA 中播放声音(1)
- 黑桃3
- Linux安装配置gdal环境
- 排序(一)-插入排序
- npm package.json ~version and ^version
- 判断一个对象是否可迭代 的方法
- 深入理解C指针
- apt-cyg遇到找不到格式适用的MD5校验和的解决方案
- windows 下 ffmpeg2.6.1 编译so文件
- Response.AddHeader
- 第四周项目二:分数类的雏形
- require和require-dev的区别