Мне нужно восстановить свой пароль, и я знаю некоторые буквы, но забуду, какие символы я использовал для остальных.Мне нужен способ генерировать все возможные перестановки пароля, учитывая некоторые известные символы и некоторые неизвестные.Например, я хотел бы ввести фразу типа «mic ?? s ?? t» в текстовое поле, и программа сгенерирует все возможные варианты этого.В этом случае я знаю, что вместо этих вопросительных знаков возможно использовать только несколько символов, но я бы хотел, чтобы в программе была возможность перестановки всех символов AZ, az, 0-9, / symbols /, etc, ИЛИопределенный набор символов, таких как EG, ty, 1-4 и т. д., вводится через второе текстовое поле в виде строки.
при использовании всех символов может генерироваться список, например
micAAsAAt
micAAsABt
micAAsACt
micAAsADt
....
с использованием ограниченного набора символов, например только EG, это будет выглядеть как
micEEsEEt
micEEsEFt
micEEsEGt
micEEsFEt
micEEsFFt
....
Если единственный способ сделать это - генерировать каждый период перестановки, подстановочный знак или нет, для слова длиной N, а затем проверять каждый из них с помощью регулярного выражениячтобы отфильтровать бесполезные, я могу принять это (хотя это сгенерирует 256 ^ N возможных комбинаций).В противном случае, я бы предпочел сгенерировать массив всех возможных, просто используя рекурсию (с которой мне нужна помощь).В конце я хотел бы создать список этих перестановок в текстовом файле.Мне действительно нужна помощь с рекурсией здесь.Я использую C #.