Мне нужна помощь, чтобы понять, как написать алгоритм перестановки.(если это даже перестановка, они должны быть в порядке и использовать одинаковые значения).
List<string> str = new List<string>{"a", "b", "c", "d"};
Как я могу получить список каждой перестановки, доступной в этом списке?Например,
a, b, c, d
ab, c, d
ab, cd
abc, d
abcd
a, bc, d
a, bcd
a, b, cd
По какой-то причине я не могу найти образец для начала.Я также хотел бы иметь возможность игнорировать перестановку, когда объединенная строка имеет количество похожих символов X.Таким образом, если бы X было 4, в этом списке число 5 не существовало бы и было бы 7 перестановок.
private List<string> permute(List<string> values, int maxPermutation)
{
//alittle help on starting it would be great :)
}
Я посмотрел и прочитал это , но он не сохраняетзаказ.