欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JAVA 插入排序

程序员文章站 2022-03-10 17:09:01
插入排序比较好理解,就是从后往前找第一个比他小的值,放这个值的后边,也就是说我们需要将所有遍历过且不满足条件的数值下标后挪一位,为他腾出地方。那么在具体写的时候怎么写呢?和前几个排序一样,首先要知道交换条件,上边已经说了,当我们的当前这一位不符合我们想要的条件的时候就把他后挪一位,也就是a[i+1]=a[i];同时我们也要注意将这个需要插入的值放入序列。放入的条件是在保证下标>=0的同时当前遍历的值刚好小于插入值。public static void Insertsort(int[] a) {...

插入排序比较好理解,就是从后往前找第一个比他小的值,放这个值的后边,也就是说我们需要将所有遍历过且不满足条件的数值下标后挪一位,为他腾出地方。
那么在具体写的时候怎么写呢?
和前几个排序一样,首先要知道交换条件,上边已经说了,当我们的当前这一位不符合我们想要的条件的时候就把他后挪一位,也就是a[i+1]=a[i];同时我们也要注意将这个需要插入的值放入序列。放入的条件是在保证下标>=0的同时当前遍历的值刚好小于插入值。

public static void Insertsort(int[] a) {
		for(int i = 0;i < a.length;i++) {
			int temp = a[i];
			int j = i - 1;
			while (j>=0 && a[j]>temp)
			{
				a[j + 1] = a[j];
				j--;
			}
			a[j + 1] = temp;
		}
	}

本文地址:https://blog.csdn.net/m0_50210478/article/details/112218823