c#希尔排序

来源:互联网 发布:杭州十大淘宝拍摄基地 编辑:程序博客网 时间:2024/06/05 20:16
privatevoid ShellSorter(int[] list)
{
     intlength = list.Length;
     for(int h = length / 2; h > 0; h = h / 2)
    {
        for (inti = 0; i < h; i++)
        {
            //插入排序
              for (intm = i; m < length; m += h)
            {
               int t = list[m];
               int j = m;
               while ( j>=h && list[j - h] > t)
               {
                   list[j] = list[j - h];
                   j = j-h;
               }
               list[j] = t;
            }
        }
    }
}