static IEnumerable<string> GetCombinations(string s, int length)
{
if (length > s.Length || length == 0)
{
return new[] { String.Empty };
if (length == 1)
{
return s.Select(c => new string(new[] { c }));
}
}
return from c in s
from combination in GetCombinations(
s.Remove(s.IndexOf(c), 1),
length - 1
)
select c + combination;
}
このコードは文字列で機能します。しかし、ArrayList の組み合わせが必要です。たとえば、
Arraylist.add('a,b');
Arraylist.add('a,c');
Arraylist.add('f,g');
Arraylist.add('h,l');
長さ=3の場合
'a,b,c','a,b,f','a,b,g'........
申し訳ありませんが、私はC#を初めて使用します..試してみましたが、できませんでした..これについてのアイデアはありますか?