您的位置:首页 > 其它

经典排序算法 – 插入排序Insertion sort

2013-03-28 23:16 295 查看
插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。

插入排序方法分直接插入排序和折半插入排序两种,这里只介绍直接插入排序,折半插入排序留到“查找”内容中进行。

  图1演示了对4个元素进行直接插入排序的过程,共需要(a),(b),(c)三次插入。



代码

public class InsertionSorter   

{   

    public void Sort(int[] arr)   

    {   

        for (int i = 1; i < arr.Length; i++)   

        {   

            int t = arr[i];   

            int j = i;   

            while ((j > 0) && (arr[j - 1] > t))   

            {   

                arr[j] = arr[j - 1];//交换顺序   

                --j;   

            }   

            arr[j] = t;   

        }   

    }    

}   

引用
http://javatd.iteye.com/blog/386450 http://www.cnblogs.com/dreamof/archive/2009/05/05/1450058.html
我始终认为,理解很重要,一是因为实际工作使用的场景极其少…二是理解后可以应付面试官的提问,这时候考的就是理解不理解
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: