yuganeswarman Ответов: 3

Хранение слова в связанном списке и генерация его анаграмм на языке C++


У меня были некоторые трудности с пониманием связанного списка. Я пытался попытаться задать вопрос об анаграмме, в соответствии с которой вопрос просит: сохраните слова в связанном списке и сгенерируйте другую анаграммуs оттуда.

Я понимаю, что мне нужно произвести перестановки слова. Однако как сохранить каждое слово в связанном списке? Мое понимание связанного списка довольно слабо. Вот как я примерно себе это представляю:

Что я уже пробовал:

Я сохраняю каждую букву в слове в каждом узле односвязного списка. Затем мне нужно переставить узлы по-разному в соответствии с перестановкой. Например, автомобиль. В первом узле хранится C, во втором-A, а в третьем-R. Теперь как я могу проинструктировать узлы расположиться шестью (3!) различными способами и вывести результаты (анаграммы) ?

Верен ли мой мыслительный процесс? Пожалуйста, потерпите меня, поскольку я пытаюсь понять эту концепцию, а также ее кодирующую часть.

3 Ответов

Рейтинг:
1

KarstenK

Связанный список - это концепция обработки данных с помощью программного обеспечения. Прочтите это замечательное объяснение Связанный список в C++.

Если вам разрешено использовать классы, то используйте класс string, например std::string. Это делает работу со строкой намного проще.


Рейтинг:
0

CPallini

На мой взгляд, требования понятны: хранить слова (не Буквы) в связанном списке.


Рейтинг:
0

Patrice T

Цитата:
У меня были некоторые трудности с пониманием связанного списка.

Чтобы понять связанные списки, вам нужно сравнить их с массивом.
Массив очень хорош, когда статичен (выделяется один раз в начале), он позволяет прямой доступ к случайному элементу, но плохо работает с добавлением, удалением или перемещением элемента.
При связанном списке прямой доступ к случайному элементу не очень хорош, но очень хорош при добавлении, удалении или перемещении элемента.