• 用户头像

    翔宇Shawn

    用LINQ全排列: public static IEnumerable<IEnumerable<T>> P<T>(IEnumerable<T> list) {if (list.Count() == 1)return new List<IEnumerable<T>> { list };return list.Select((a, i1) => P(list.Where((b, i2) => i2 != i1)).Select(b => (new List<T> { a }).Union(b))).SelectMany(c => c);}
    展开全文
    原微博