推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > taoisall > 插入排序实现原理图解(1)

插入排序实现原理图解(1)

taoisall 2019-02-13

对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入

  1. 从第一个元素开始,该元素认为已经被排序;

  2. 取出下一个元素,在已排序的元素序列中从后向前扫描;

  3. 如果已排序元素大于新元素,新元素继续比较前一个元素,直到找到已排序的元素小于或者等于新元素的位置;

  4. 将新元素插入到该位置后;

  5. 重复步骤2~4。

java实现

public class sort {
public static void main(String[] args) {
int [] a={2,5,1,3,6};
System.out.println("排序结果:"+insertSort(a));
}
public static int[] insertSort(int[] arr)
{
if (arr.length < 2)
return arr;

for (int i = 1;i < arr.length;i++) { //i=2
           for (int j = i;j > 0;j--) { // j=2   25136
               if (arr[j-1] > arr[j]) { //  arr[1] >arr[2]  5>1 交换之后 21536
                   int temp = arr[j]; //j=1  arr[0]>arr[1]  2>1  12536
                   arr[j] = arr[j-1];
arr[j-1] = temp;
} else {
System.out.println("break");
break;//插入新的元素
               }
}
}

return arr;
}
}


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《插入排序实现原理图解(1)》的版权归原作者「taoisall」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注taoisall微信公众号

taoisall微信公众号:taoisall

taoisall

手机扫描上方二维码即可关注taoisall微信公众号

taoisall最新文章

精品公众号随机推荐