C# - выбор различных комбинаций из списка элементов
Как получить все возможные комбинации элементов из списка в C#? У меня есть список, давайте назовем его
elementsList
Я хочу найти все возможные комбинации со следующими условиями из списка: - Никаких повторяющихся целых чисел.
- Целые числа в комбинациях должны располагаться в хронологическом порядке.
Каждая комбинация должна состоять из 5 целых чисел. Так, например, если мой
elementsList
содержит целые числа 1, 2, 3, 4, 5 и 6 - есть 6 допустимых комбинаций: - 1, 2, 3, 4, 5
- 1, 2, 3, 4, 6
- 1, 2, 3, 5, 6
- 1, 2, 4, 5, 6
- 1, 3, 4, 5, 6
- 2, 3, 4, 5, 6
Как я могу достичь этого результата в C#? Заранее спасибо.
Что я уже пробовал:
У меня нет проблем с написанием кода, я застрял на логике. Каким будет процесс/шаги для всего вышесказанного? Спасибо.
BillWoodruff
Покажите код, который у вас есть сейчас.
":комбинации должны быть в хронологическом порядке" что это значит ?
Member 14561224
Ладно, извини, что я не использовал правильный термин. Я хотел сказать, что каждое целое число в комбинации должно быть больше, чем предыдущее целое число в комбинации. Например, 1, 3, 2 не является допустимой комбинацией, в то время как 1, 4, 5 является.
BillWoodruff
С этими ограничениями вам будет гораздо проще создать решение. твое здоровье, Билл
George Swan
Взгляните на свой пример. Это матрица из 6 строк и 5 столбцов. Каждое число присутствует в 5 из 6 строк. Посмотрите, как были заполнены столбцы. Первый столбец заполняется первым номером в серии до тех пор, пока 5 ячеек не будут заполнены этим номером. Затем заполнение столбца продолжается следующим номером. Когда столбец заполнен, процесс переходит к следующему столбцу, пока все 6 чисел не будут добавлены 5 раз и матрица не будет заполнена.