如何在C#中获取字符串的powered列表

本文关键字:字符串 powered 列表 获取 | 更新日期: 2023-09-27 17:58:05

可能重复:
获取所有可能的单词组合

我想要一个字符串的"功率列表"。因此,给定这个输入:

string[] s = new string[] { "a", "b", "c" } ;

函数将返回:

string[] s = new string[] { "a", "b", "c", "ab", "ac", "bc", "abc" } ;

我该怎么做?

如何在C#中获取字符串的powered列表

试试这个:

string[] chars = new string[] { "a", "b", "c" };
List<string> result = new List<string>();
foreach (int i in Enumerable.Range(0, 4))
{
    IEnumerable<string> coll = chars;
    foreach (int j in Enumerable.Range(0, i))
    {
        coll = coll.SelectMany(s => chars, (c, r) => c + r);
    }
    result.AddRange(coll);
}