首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

编程珠玑中双向快速排序,达人~(将伪代码转化为C#代码)

2013-01-18 
编程珠玑中双向快速排序,请教各位达人~(将伪代码转化为C#代码)11.3中一段伪代码怎样转换为C#代码 void qso

编程珠玑中双向快速排序,请教各位达人~(将伪代码转化为C#代码)
11.3中一段伪代码怎样转换为C#代码
 void qsort3(l,u) 
        if (l >= u)
             return
        t = x[1];i = 1;j = u + 1;
        loop
            do i++ while i <= u && array[i] < t
            do j-- while array[j] > t
            if i > j
               break;
            Swap(ref array[i], ref array[j]);
        Swap(ref l, ref j);
        qsort3(l, j - 1);
        qsort3(j + 1, u);

c# 编程 快速排序算法
[解决办法]
void qsort3(int l, int u)
{
         if (l >= u)
              return;
         t = x[1];i = 1;j = u + 1;
         while (true)
         {
             do { i++; } while (i <= u && array[i] < t)
             do { j--; } while (array[j] > t)
             if (i > j)
                break;
             Swap(ref array[i], ref array[j]);
         }
         Swap(ref l, ref j);
         qsort3(l, j - 1);
         qsort3(j + 1, u);
}

热点排行