插入排序算法

插入排序(Insertion Sort)算法是一种简单、直观且稳定的排序算法。如果要在一个已排好序列中插入一个数据,但要求此数据序列在插入数据后仍然有序,就要用到插入排序法。

public static int[] insertSort(int[] arr){
  for(int i = 1; i<arr.length;i++){
    //插入的数
    int insertVal = arr[i];
    //被插入的位置(准备和前一个数进行比较)
    int index = i-1;
    //如果插入的数比被插入的数小
    while(index >= 0 && insertVal<arr[index]){
      //则将arr[index]向后移动
      arr[index+1] = arr[index];
      //将index向前移动
      index--;
    }
    //将插入的数放入合适的位置
    arr[index+1]=insertVal;
  }
  return arr;
}
posted @ 2022-10-04 17:00  ╰(‵□′)╯  阅读(37)  评论(0)    收藏  举报