当前位置: 代码迷 >> 综合 >> java 插入排序 代码结构简单,适合初学者
  详细解决方案

java 插入排序 代码结构简单,适合初学者

热度:56   发布时间:2023-10-26 14:07:47.0
public class TestInsertSort {public static void main(String[] args) {int[] arr = new int[]{4,6,0,-7,5,1,-10,6,8,46,23,5,-1};//外层控制循环的次数,首先arr[0]作为初值,只有一个数,默认有序for (int i = 1; i < arr.length; i++) {//里层控制比较的次数,arr[i]和arr[i]之前的元素挨个比较,j--//如果arr[j]小于前一个元素,赋值给后移一位,依次覆盖int index = 0;//追踪移动的位置,最后为该元素的最终位置int noSort = arr[i]; //记录当前的排序元素for(int j=i;j>0;j--) {if (noSort < arr[j-1]) {arr[j] = arr[j-1];}else {index=j;break; //结束本次循环,要不然会和比自己小的做无意义的比较,浪费时间}}arr[index] = noSort;}//遍历输出for (int i : arr) {System.out.println(i);}}}
  相关解决方案