插入排序算法

时间:2022-05-06
本文章向大家介绍插入排序算法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

插入排序算法演示:

对数列9、1、5、3、8按从小到大排序:

对第2个数排序

9

1

5

3

8

9

5

3

8

9

5

3

8

1

9

5

3

8

对第3个数排序

1

9

3

8

1

9

3

8

1

5

9

3

8

对第4个数排序

1

5

9

8

1

5

9

8

1

5

9

8

1

3

5

9

8

对第5个数排序

1

3

5

9

1

3

5

9

1

3

5

8

9

算法: 

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://www.cnblogs.com/kkun/archive/2011/11/23/2260265.html