Я работаю над крошечным проектом (на Java), пока uni отсутствует, просто чтобы проверить себя, и я наткнулся на камень преткновения.
Я пытаюсь написать программу, которая будет читать стекстовая версия словаря, сохраните ее в ds (структура данных), затем попросите пользователя ввести случайную строку (предпочтительно бессмысленную строку, но только буквы и -и, никаких цифр или других знаков препинания - меня это не интересует)что-нибудь еще), найдите все анаграммы введенной строки, сравните ее со словарем ds и верните список всех возможных анаграмм, которые есть в словаре.
Хорошо, для шага 1 и 2 (чтениеиз словаря), когда я читаю все, что хранится на карте, ключи - буква алфавита, а значения - ArrayLists, в которых хранятся все слова, начинающиеся с этой буквы.
I 'Я застрял в поиске всех анаграмм, я понял, как вычислить количество возможных перестановок рекурсивно (гордо), и я не уверен, как на самом деле делать задниеrange.
Лучше ли разбить его на char и поиграть с ним таким образом, или разбить его и сохранить как строковые элементы?Я видел пример кода в Интернете на разных сайтах, но я не хочу видеть код, я хотел бы знать, какой подход / идеи лежат в основе разработки решения для этого, поскольку я как бы застрял, как начать: (
Я имею в виду, я думаю, я знаю, как я собираюсь провести сравнение со словарем ds после того, как я сгенерировал все перестановки.
Любой совет будет полезен, но не код, если этовсе будет в порядке, просто идеи.
PS Если вы хотите увидеть мой код до сих пор (по любой причине), я выложу то, что у меня есть.