zoukankan      html  css  js  c++  java
  • 直接插入排序

    思路:

    从第二个元素开始遍历,若当前元素小于前一个元素执行排序,将当前元素作为标准数,从标准数的前一个元素位置开始向前遍历并且要求遍历的元素大于标准数时,遍历元素向后移,最后当遍历元素不满足大于标准数时,将标准数赋给不满足的元素。

    package DataStruct.Sort;
    
    import java.util.Arrays;
    
    public class InsertionSort {
        public static void main(String[] args) {
            int arr[]=new int[]{4,2,5,7,1,0,7,8,11,34};
            insertionSort(arr);
            System.out.println(Arrays.toString(arr));
        }
        public  static void insertionSort(int [] arr)
        {
            //从数组的第二个元素开始遍历
           for(int i=1;i<arr.length;i++)
           {
               //当数组的前一个元素大于当前所在元素时
               if (arr[i]<arr[i-1])
               {
                   //将数组当前元素作为标准数
                   int temp=arr[i];
                   int j;
                   //从标准数的前一个元素开始向前遍历,如果向前遍历的元素大于标准数,将向前遍历的元素后移
                   for (j=i-1;j>=0&&temp<arr[j];j--)
                       arr[j+1]=arr[j];
                   //将标准数赋给向前遍历时第一次遇到的小于或等于标准数的元素。
                   arr[j+1]=temp;
               }
           }
        }
    }

  • 相关阅读:
    JS字符串之字符方法
    JS数组之归并方法
    JS数组之迭代方法
    JS数组之位置方法
    JS数组之操作方法
    【Vue-入门笔记-3】
    【Vue-入门笔记-2】
    阿里靠什么武功秘籍渡过“双十一“的天量冲击
    CC++ --- 线性表-学生成绩管理系统
    TortoiseSVN 使用教程
  • 原文地址:https://www.cnblogs.com/dloading/p/10750420.html
Copyright © 2011-2022 走看看