美文网首页
插入排序

插入排序

作者: 理想是一盏灯 | 来源:发表于2019-10-13 16:57 被阅读0次

    插入排序

    public static void main(String[] args) {
    
       // int arr[] ={75,70,85,80,60,100,90};
        int arr[] ={9,8,7,6,5,4,3};
    
        InsertSort(arr);
        System.out.println(Arrays.toString(arr));
    }
    
    public static int[] InsertSort(int[] arr){
    
        //分成已排序和dai待排序两部分
        //初始状态 已排序部分:第一个元素  待排序部分:第二个元素至最后一个元素
    
        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;
        }
    
        return arr;
    }
    
    

    相关文章

      网友评论

          本文标题:插入排序

          本文链接:https://www.haomeiwen.com/subject/nwqkmctx.html