谁能给我给“输入4位数,输出24组位置不同的的数组”的方法啊!!!!!
谢谢了!

解决方案 »

  1.   

    参考,LINQ的写法
    http://topic.csdn.net/u/20120407/20/197e6e0b-1f24-4537-a8e7-00feeae85a52.html?66150
      

  2.   

    代码替你粘过来
    using System;
    using System.Collections.Generic;
    using System.Linq;namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                排列组合("ABC", 0, 3).ToList().ForEach(x => { Console.WriteLine(x); });
                Console.ReadKey();
            }        private static IEnumerable<string> 排列组合(string source, int fr, int len)
            {
                if (len == 1)
                    return new List<string> { source.Substring(fr, 1) };
                else
                    return from sub in 排列组合(source, fr + 1, len - 1)
                           from i in Enumerable.Range(0, sub.Length + 1)
                           let first = source.Substring(fr, 1)
                           select sub.Insert(i, first);
            }
        }
    }