Алгоритм перебора на LINQ
От: Maru  
Дата: 03.02.14 09:39
Оценка:
Есть алфавит в виде произвольного массива 'a'...'z' и выходная длина N.
Возможно ли написать алгоритм перебора ("a..aa", "a..ab", .. , "z..zz") в виде чистого linq выражения без использования явных циклов и дополнительных контейнеров, которое будет лениво выводить одно за другим все значения?

string[] ss = new string[] {"a", "b", "c"};
int N = 3;

var result = from ss select ?;

foreach (var x in result)
{
Console.WriteLine(x); // "aaa" — "zzz"
}

Чувствую, что тут нужен SelectMany, но пока данный орешек не поддается.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.