您现在的位置是:首页 > 后台技术 > 数据结构与算法数据结构与算法

插入排序法(图文)

第十三双眼睛2022-06-20【数据结构与算法】人已围观

简介插入排序法

插入排序法思想:
插入排序的基本思想是:把n个待排序的数堪称一个有序表和一个无序表,开始时有序表中只有一个元素,无序表中有n-1个元素,排序过程中,每次从无序表中取出第一个元素,把他依次与有序表中的元素进行比较,将他插入到有序表中的适当位置,使之称为新的有序表。
程序如下:
package day005;
import java.util.Arrays;
public class InsertSort {
    public static void main(String[] args) {
        // 定义原始数组
        int [] arr = {4,1,5,2,6,3,7};
        insertSort(arr);
        System.out.println(Arrays.toString(arr));
    }
    public static void insertSort(int [] arr){
        for(int i=1;i<arr.length;i++){
            // 保存需要插入的元素
            int insertValue = arr[i];
            // 假设要插入的位置
            int insertIndex = i-1;
            // 循环条件:插入下表没有越界
            // 要插入的值大于假设的位置
            while (insertIndex>=0&&insertValue>arr[insertIndex]){
                // 原本的元素后移
                arr[insertIndex+1]=arr[insertIndex];
                // 要插入的位置前移
                insertIndex--;
            }
            // 内层循环退出,说明要插入的位置已经找到
            arr[insertIndex+1] = insertValue;
        }
    }
}
测试结果:
[7, 6, 5, 4, 3, 2, 1]

 

Tags:

很赞哦! ()

文章评论

    共有条评论来说两句吧...

    用户名:

    验证码:

本站推荐

站点信息

  • 网站名称:JavaStudy
  • 建站时间:2019-1-14
  • 网站程序:帝国CMS7.5
  • 文章统计242篇文章
  • 标签管理标签云
  • 统计数据百度统计
  • 微信公众号:扫描二维码,关注我们