插入排序—Java

插入排序

基本思想 :

  • 实现数组从小到大排
  • 从第二个数开始跟前面的数比较 找到合适的位置插入 后面的数往后推移 但推移不会超过原来插入的数的下标

代码实现

java 复制代码
public static void InsertSort(int[] arr) {
		for(int i = 1;i<arr.length;i++) {//从1开始是因为要和前面的数有一个比较的过程
			int InsertIndex=i-1;//要插入的理想目的地
			int Insertvalue= arr[i];
			while (InsertIndex>=0&&Insertvalue<arr[InsertIndex]) {
				//insertindex后移动一位
				arr[InsertIndex+1]=arr[InsertIndex];
				InsertIndex--;
				//一直在减去,所以while结束后代表找到
				//后面要加还给他,代表找到的那个位置
			}
		//
			if(InsertIndex+1!=i) {
				//+1代表找的那个位置
				arr[Insertvalue+1]=Insertvalue;
			}
		}
		for(int i = 0;i<arr.length;i++) {
			System.out.print(arr[i]+"\t");
		}
		
		
	}
相关推荐
LCG元1 分钟前
【实战】树莓派物联网开发:DHT11温湿度采集与MQTT云上报全流程
java·jvm·物联网
斯内普吖2 分钟前
(开源)农产品电商系统实战指南 基于 Java + SpringBoot + Vue + MySQL
java·vue.js·spring boot·mysql·开源
啊嘞嘞?5 分钟前
力扣(回文链表)
算法·leetcode·链表
Awh-7 分钟前
数据结构 第六章:哈希存储
数据结构·算法·哈希算法
M78佐菲12 分钟前
Linux学习笔记:目录IO与帧缓冲
linux·笔记·学习·算法
SimonKing13 分钟前
AI逆向实战:一个壁纸网站被我5分钟摸透了,你也能
java·后端·程序员
天云数据16 分钟前
从“LLM+工具”到Harness 工程:Lilian Weng新文的技术拆解,与一个生产级参考实现
java·前端·网络
玫瑰互动GEO20 分钟前
抖音SEO优化技术拆解:搜索排名四大因子与4步落地算法分析
人工智能·算法·搜索引擎·语音识别
让学习成为一种生活方式29 分钟前
ASTRAL v5.7.1--生信工具110
java
2501_9378609433 分钟前
从JDBC到数据访问:Java数据库编程完全指南
java·开发语言·数据库