插入排序

来源:互联网 发布:anaconda 改成python 2 编辑:程序博客网 时间:2024/04/27 13:46

插入排序:简单说就是,将数组的第二个元素开始跟数组的第一个元素进行比较,将比较大的元素放在数组的第二个位置(对升序来说),将第三个元素跟数组的第一和第二个元素进行比较,第四个元素跟第一第二第三个元素比较,以此类推。

上述说法可能有点不太通俗易懂,结合程序更能说明问题

public class Sort {    //插入排序方法      public static void sort(int[] arry){            int j;            int  i;            int temp;            //从第二个跟第一个元素开始进行比较,所以j=1            //比较从1到arry.length;            for(j=1;j<arry.length;j++){                temp=arry[j];                i=j-1;                //while循环保证要比较的次数                while(i>=0&&arry[i]>temp){                    //将较大者放在后面                    arry[i+1]=arry[i];                    i=i-1;                }                arry[i+1]=temp;            }        }    public static void main(String[] args) {        //初始化数组        int [] array =new int [10];        Random r=new Random();        for(int i=0;i<10;i++){            array[i]=r.nextInt(10);        }        System.out.println("排序前:");        for(int a:array){            System.out.print(a+" ");        }        Sort.sort(array);        System.out.println();        System.out.println("排序后:");        for(int a:array){            System.out.print(a+" ");        }    }}
0 0
原创粉丝点击