算法入门之插入排序
来源:互联网 发布:食品科学与数据分析 编辑:程序博客网 时间:2024/05/25 18:11
虽然很早在这里安家了,但是到现在没写过一篇博文,今决定从今天开始将开始用博文记录我的学习点滴,供自己回顾,若能给他人一点启示,那便是好事成双。今天就写一下一个算法的入门--插入排序。
伪代码:
for i<- 2 to length[A] do key <- a[i] j<- i-1 //比较得到插入位置同时将前面排好序的向后移 while j>0 and A[j] > key A[j+1] <- A[j] j <- j-1 A[j+1] <- key //插入
下面是Java代码实现:
public static int[] insertSortAsc(int[] arr){if(arr.length < 2){return arr;}for(int i=1; i<arr.length; i++){int key = arr[i];int j = i - 1;while(j>-1 && arr[j]>key){arr[j+1] = arr[j];j--;}arr[j+1] = key;}return arr;}
main方法中测试代码:
//随机生成一个长度为20的int类型数组 int[] array = getRandomArray(20); System.out.println("未排序数组:" + Arrays.toString(array));insertSortAsc(array);System.out.println("插入排序好:" + Arrays.toString(array));
测试结果:
未排序数组:[58, 55, 93, 61, 61, 29, 68, 0, 22, 7, 88, 28, 51, 89, 9, 78, 98, 61, 20, 58]
插入排序好:[0, 7, 9, 20, 22, 28, 29, 51, 55, 58, 58, 61, 61, 61, 68, 78, 88, 89, 93, 98]
- 算法入门之插入排序
- 算法入门之插入排序
- 排序算法入门之插入排序
- 排序算法入门之插入排序
- 排序算法入门之插入排序
- 算法入门--插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之----插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 博客终于重新开通了,感动ing
- 8086寄存器
- 【Java】多线程
- android中的三种xml解析方法---sax解析,pull解析,dom
- .NET自定义控件应该如何实现?
- 算法入门之插入排序
- 设计模式学习(1) 工厂模式
- 实现textview同时具有水平滚动条和垂直滚动条
- SSH整合使用步骤
- Oracle培训笔记 8.6 逻辑结构(二)
- MacOS中卸载软件的软件
- Oracle培训笔记 8.6 用户权限
- wireshark下载forLinux
- Oracle培训笔记 8.7 审计