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

    直接插入:就是把未排序的数据插入到已排序的数列中去

    步骤:从排序数组的第二个数开始,依次与前面的数比较,比前面的数大的话就插入到前面去,依次循环完。

        public static void sort(int a[]){
            
            //key用来保存待插入的值,index用来指示已排序的数组下标
            int key,index; 
            
            for(int i = 1 ; i < a.length; i++){
                
                key = a[i];
                for(index = i -1; index >= 0 &&a[index] < key; index--){
                    a[index+1] = a[index];
                }
                a[index+1] = key;
            }
        }

    完整代码:

    package sort;
    
    /**
     * 直接插入排序
     *
     * @author lin
     *
     */
    public class Select {
    
        static int a[] = {5,3,6,7,3,2,9,6,3,6};
        
        public static void main(String[] args) {
            sort(a);
            print(a);
        }
            
        public static void sort(int a[]){
            
            //key用来保存待插入的值,index用来指示已排序的数组下标
            int key,index; 
            
            for(int i = 1 ; i < a.length; i++){
                
                key = a[i];
                for(index = i -1; index >= 0 &&a[index] < key; index--){
                    a[index+1] = a[index];
                }
                a[index+1] = key;
            }
        }
        
        public static void  print(int a[]){
            for(int i = 0; i < a.length; i ++)
            System.out.format("%d ", a[i]);
        }
    }
  • 相关阅读:
    腾讯//最长回文子串
    腾讯//最长回文子串
    马拉车算法
    马拉车算法
    简单实操_Github创建本地仓库及SSH KEY
    Linux5_磁盘 分区 挂载点的理解
    Linux4_手动分区方案
    Linux3_什么是Uboot
    stdin stdout stderr 标准I/O流
    卢克,学着去读源代码
  • 原文地址:https://www.cnblogs.com/mynona/p/3606200.html
Copyright © 2011-2022 走看看