排序介绍
插入排序属于内部排序法,是对于欲排序的元素以插入的方式寻找该元素的适当位置,以达到排序的目的
代码思路
插入排序的基本思想是把n个待排序的元素看成一个有序表和无序表,开始时有序表只包含一个元素,无序表中包含n-个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将他插入到有序表的适当位置,使之成为新的有序表
代码实现
public static void main(String[] args) {
int[] nums = { 12, 45, 65, 13, 55, 644, 288, 123 };
for(int i=1;i<nums.length;i++) {
int insertVal=nums[i];//待插入的数字
int insertIndex=i-1;//待插入数字前面的数字的下标
while(insertIndex>=0&&insertVal<nums[insertIndex]) {
nums[insertIndex+1]=nums[insertIndex];
insertIndex--;
}
//当推出while循环时表示找到了插入位置
nums[insertIndex+1]=insertVal;
}
System.out.println(Arrays.toString(nums));
}