假设我现在有两种对象,对象类型为N和C,排入一个数组中。现在要求对数据中的数据进行重新排列,要求是遇到类型为N的数据,可以为一排,但一排中对象最多不可以超过三个,超过的话就重新起一排(不可以颠倒排列的顺序)。遇到类型为C的数据,独占一排。请给出具体实现。示意图见下队列

解决方案 »

  1.   

    int nCount=0;
    for(int i=0;i<arry.Length;i++)
    {
        if(arry[i].Type=="N") //N
        {
           nCount++;     
            Console.Write(arry[i].Name);  //输出N
           if(nCount==3)
           {
               Console.Write("\r\n"); //新行
                 nCount=0;           
           }  
        }
        else  //C
        {
            if(nCount>0)
              Console.Write("\r\n"); //新行
              Console.Write(arry[i].Name);  //输出C
            Console.Write("\r\n"); //新行
             nCount=0;  
        }
    }
      

  2.   

    你定义List,按上面的循环,把每一行加到一个List里