网站首页 > java教程 正文
插入排序

工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。就是将数组第一个值看做有序的,从后每一个值放进来的时候,找放的位置。这里边就需要一些已经排好的数据可能会整体左移或者右移,所以用插入排序的算法也可以找到新数据存放到有序数组中的位置
用java代码实现:
public static void insertSort(int[] arr) {
//定义循环控制变量
int i, j;
//定义哨兵
int guard;
for (i = 1; i < arr.length; i++) {
if (arr[i] < arr[i - 1]) {
guard = arr[i];
j = i - 1;
do {
arr[j + 1] = arr[j];
j--;
} while (j != -1 && guard < arr[j]);
arr[j + 1] = guard;
}
}
}
猜你喜欢
- 2025-07-03 铁打的程序,流水的语言,2018年JAVA编程还想坚挺500年?
- 2025-07-03 揭2015年最新TIOBE编程榜(2017编程)
- 2025-07-03 「排序」堆排序不难!看完这篇你也能手写堆排序啦
- 2025-07-03 40K+Star!Mall电商实战项目开源,附源码、教程合集
- 2025-07-03 高效实现Java并发编程之Queue(java并发编程深度解析)
- 2025-07-03 TP-LINK面试真题和答案,您能做对几道?
- 2025-07-03 SEO模拟用户点击快排原理(seo排名点击工具)
- 2025-07-03 厉害了,ES 如何做到几十亿数据检索 3 秒返回
- 2025-07-03 「排序算法」图解双轴快排(双轴快速排序算法)
欢迎 你 发表评论:
- 11-09华为鸿蒙系统与安卓系统哪个好用
- 11-09win10系统专业版产品密钥(win10专业版产品密钥无效怎么办)
- 11-09手机和电脑怎么连接同一个网络
- 11-09给固态硬盘装系统(固态硬盘装系统需要设置什么)
- 11-09手机上做ppt的软件(手机上做PPT的软件叫什么)
- 11-09知道qq密码怎么强制登录(知道qq密码怎么悄悄登录)
- 11-09为什么电脑会自动开机(为什么电脑会自动开机关机怎么办)
- 11-09360安全浏览器电脑版官方下载
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)

本文暂时没有评论,来添加一个吧(●'◡'●)