【插入排序解析】

起始:
假设第一个元素为已经排好序

那么我们就要从数组的第二个元素开始

每一轮确定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));
}
}

最新文章

  1. eclipse maven maven-archetype-webapp 创建失败
  2. event事件对象
  3. ThinkPad_T430重装系统
  4. PopupWindow错误:PopupWindow$1.onScrollChanged 出现 NullPointerException和PopupViewContainer.dispatchKeyEvent 出现 NullPointerException
  5. [SLAM] 01 &quot;Simultaneous Localization and Mapping&quot; basic knowledge
  6. XML学习笔记(二)-- DTD格式规范
  7. NetAnalyzer笔记 之 三. 用C++做一个抓包程序
  8. web api简单验证实现办法
  9. keil将程序装入外部FLASH具体解释
  10. pdftk的使用介绍
  11. leetcode先刷_Binary Tree Level Order Traversal II
  12. Fatal error: Class ‘mysqli’ not found in解决办法
  13. bootstrap 表单样式
  14. luogu P4299 首都
  15. kubernetes集群搭建(9):docker 镜像的导入与导出
  16. 一个随机验证码且不重复的小程序以及求随机输入一组数组中的最大值(Java)
  17. matlab矢量场数值可视化(动态数值模拟)
  18. python教程2:list和tuple
  19. Sql中判断&quot;数据库&quot;、&quot;表&quot;、&quot;临时表&quot;、&quot;存储过程&quot;和列&quot;是否存在
  20. BS4爬取物价局房产备案价以及dataframe的操作来获取房价的信息分析

热门文章

  1. UBUNTU安装代码阅读器Understand
  2. Zstack迁移实战记录1
  3. 关于集合中remove()方法的问题
  4. CentOS7加入AD域(winbind)
  5. 网页实时显示已经运行了多少天 html+js
  6. php使用PDO获取结果集的方法
  7. 与时俱进的治疗策略不断提高RA无药缓解机会[EULAR2015_SAT0058]
  8. OpenLayers多源数据加载
  9. LeetCode-1606 找到处理请求最多的服务器
  10. docker安装xxl-job-admin