【java数据结构与算法】插入排序
2024-10-21 09:41:34
【插入排序解析】
起始:
假设第一个元素为已经排好序
那么我们就要从数组的第二个元素开始
每一轮确定1一个元素的正确位置
所以外层循环的控制变量为 [1,arr.length)的左闭右开区间
外层循环控制比较轮次的同时,也是每轮需要比较的数组元素的下标
因为插入排序的原理为 将待排序的数组元素插入到有序的假设数组内
这个假设的有序数组是变化的,每轮比较完都会增加,
所以用内循环变量控制元素与这个动态变化的有序数组的比较次序
public class InsertSort1 {
public static void main(String[] args) {
int[] arr = new int[]{15,13,20,4,9,3};
for (int i=1;i<arr.length;i++){
for (int j=0;j<i;j++){
if (arr[i]<arr[j]){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
System.out.println(Arrays.toString(arr));
}
}
最新文章
- eclipse maven maven-archetype-webapp 创建失败
- event事件对象
- ThinkPad_T430重装系统
- PopupWindow错误:PopupWindow$1.onScrollChanged 出现 NullPointerException和PopupViewContainer.dispatchKeyEvent 出现 NullPointerException
- [SLAM] 01 ";Simultaneous Localization and Mapping"; basic knowledge
- XML学习笔记(二)-- DTD格式规范
- NetAnalyzer笔记 之 三. 用C++做一个抓包程序
- web api简单验证实现办法
- keil将程序装入外部FLASH具体解释
- pdftk的使用介绍
- leetcode先刷_Binary Tree Level Order Traversal II
- Fatal error: Class ‘mysqli’ not found in解决办法
- bootstrap 表单样式
- luogu P4299 首都
- kubernetes集群搭建(9):docker 镜像的导入与导出
- 一个随机验证码且不重复的小程序以及求随机输入一组数组中的最大值(Java)
- matlab矢量场数值可视化(动态数值模拟)
- python教程2:list和tuple
- Sql中判断";数据库";、";表";、";临时表";、";存储过程";和列";是否存在
- BS4爬取物价局房产备案价以及dataframe的操作来获取房价的信息分析