插入算法

伪码:

INSERTION-SORT(A)

  for j ← 2 to length(A)

    do key ← A[j]

    i ← j - 1

    while i > 0 and A[i] > key

      do A[i + 1] ← A[i]

        i ← i - 1

    A[i + 1] ← key

 

Java 实现:

    public void insertionSort(int[] a)
    {
        int len = a.length;
        for (int j = 1; j < len; j++)
        {
            int key = a[j];
            int i = j - 1;
            while (i >= 0 && a[i] > key)
            {
                a[i + 1] = a[i];
                i = i - 1;
            }
            a[i + 1] = key;
        }
    }
posted @ 2012-05-05 21:07  qiangzhu  阅读(157)  评论(0编辑  收藏  举报