WEB开发网
开发学院软件开发C语言 C#实现所有经典排序算法汇总 阅读

C#实现所有经典排序算法汇总

 2009-05-06 08:27:04 来源:WEB开发网   
核心提示: 4、插入排序插入排序 public class InsertionSorter { public void Sort(int[] arr) { for (int i = 1; i < arr.Length; i++) { int t = arr[i]; int j = i

4、插入排序

插入排序
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;   
        }   
    }    
}   

5、希尔排序

希尔排序
public class ShellSorter   
{   
    public void Sort(int[] arr)   
    {   
        int inc;   
        for (inc = 1; inc <= arr.Length / 9; inc = 3 * inc + 1) ;   
        for (; inc > 0; inc /= 3)   
        {   
            for (int i = inc + 1; i <= arr.Length; i += inc)   
            {   
                int t = arr[i - 1];   
                int j = i;   
                while ((j > inc) && (arr[j - inc - 1] > t))   
                {   
                    arr[j - 1] = arr[j - inc - 1];//交换数据   
                    j -= inc;   
                }   
                arr[j - 1] = t;   
            }   
        }   
    }  
}  

上一页  1 2 3 4 5 6 7  下一页

Tags:实现 所有 经典

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接