Java实现直接插入排序算法

来源:互联网 发布:软件导刊怎么样 编辑:程序博客网 时间:2024/04/30 00:07

直接插入排序是一种最简单的排序方法,它的基本操作是将一个记录插入到已经牌号的有序表中,从而得到一个新的有序表。实际上,在给定的一个数组中,我们可以把第一个元素看成独立的一个有序表,其余的元素都是待插入的元素,通过查找插入位置,移动元素位置来实现排序。

package com.bear;public class StraightInsertion {    private int[] list = {5,4,3,1,2,8,9,10,0,7};    public static void main(String[] args) {        StraightInsertion insertion = new StraightInsertion();        insertion.visit();        insertion.sort();        insertion.visit();    }    public void sort()    {        int guard = list[0];        int i,j;        for ( i = 1; i < list.length; i++) {            if(list[i]<list[i-1])            {                guard = list[i];                for ( j = i-1; j>=0&&list[j]>guard; j--) {                    list[j+1] = list[j];                }                list[j+1] = guard;            }        }    }    public void visit()    {        System.out.print("the list = ");        for (int i = 0; i < list.length; i++) {            System.out.print(list[i]+" ");        }        System.out.println();    }}
0 0
原创粉丝点击