首页 > 编程语言 > 详细

java 实现插入排序

时间:2016-10-20 15:15:18      阅读:137      评论:0      收藏:0      [点我收藏+]

sorted数组第0个位置没有放数据

从sorted数组的第二个数据开始处理

 

 

 

package com.learn;

public class InsertionSort {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        double [] sort=new double[]{0.0,9.8,2.3,4.5,6.7,1.2,7.5,2.3};
        
        InsertionSort is=new InsertionSort(sort);
    }

    
    public InsertionSort(double [] sorted){
        
        int sortedLength=sorted.length;
        for (int i=2;i<sortedLength;i++){
            
            
            if(sorted[i]<sorted[i-1]){
                
                sorted[0]=sorted[i];
                sorted[i]=sorted[i-1];
                
                int insertpos=0;
                
                for(int k=i-2;k>=0;k--){
                    if(sorted[k]>sorted[0]){
                        
                        sorted[k+1]=sorted[k];
                        
                        
                    }
                    else{
                        
                        
                        insertpos=k+1;
                        break;
                    }
                    
                    
                }
                
                sorted[insertpos]=sorted[0];
                
            }
            
            
            
        }
        
        for (int k=1;k<sortedLength;k++){
            
            
            
            System.out.println(sorted[k]);
        }
        
        
    }
    
    
}

 

java 实现插入排序

原文:http://www.cnblogs.com/luo-mao/p/5980409.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!