插入排序 (Java实现)
该算法是假设已有序列是有序序列,
从首元素(首元素为单个元素,肯定是有序的...)开始分析,对其他元素的位置进行有序的确定;
排序算法
1 public class InsertionSort { 2 public static void insertionSort(int a[]) { 3 4 int i,j,key,n=a.length; 5 for(j=1;j<n;j++){ 6 key=a[j]; //key<-a[j] 7 i=j-1; //i=j-1表示从当前有序数组最后一个元素开始算 8 while(i>=0&&a[i]>key){ 9 //当还未到达数组的起始并且当前元素大于要插入的数key,则i值与后一位进行交换,并且i值减小 10 //这可以保证大于key的所有元素依次向末尾方向移动一位 11 //保证,key到达的位置前面没有大于key的元素,后面也没有小于key 12 //这就是插入排序算法的思想 13 a[i+1]=a[i]; 14 i--; 15 } 16 a[i+1]=key; 17 } 18 } 19 }
未完,待续......
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端