Я искал много, чтобы найти полезный контент по этой теме, но invain. Я создал связанный список, который работает нормально. Теперь, в качестве привязки, я должен хранить некоторые словарные слова, указанные в файле «input.txt». Упоминается, что вы должны выполнить это задание с использованием двумерных связанных списков, т. Е. Создания другого связанного списка внутри узла связанного списка. Это означает, что каждый узел связанного списка теперь будет содержать список. Это также можно сделать с помощью векторов, но я думаю, что связанный список может быть более полезным. Теперь рассмотрим код.Как создать узел, который также будет содержать список
// В list.h
template <class T>
struct ListItem
{
T value;
ListItem<T> *next;
ListItem<T> *prev;
ListItem(T theVal)
{
this->value = theVal;
this->next = NULL;
this->prev = NULL;
}
};
template <class T>
class List
{
ListItem<T> *head;
public:
// Constructor
List();
// Destructor
~List();
}
мне нужно сделать связанный список внутри узла Таким образом, в "Struct ListItem" Я делаю что-то вроде этого:
List<T> dictionary;
Но это с сообщением об ошибке:
"ISO C++ forbids declaration of âListâ with no type"
Во-вторых, как бы я начал создавать другой связанный список внутри узла. Я имею в виду, предположим, что указатель temp указывает на заголовок первого связанного списка. Как я теперь сделаю другой узел (который будет принадлежать моему 2-му связанному списку) внутри этого узла. Я предполагаю, что может быть что-то вроде этого:
temp->ListItem<T>* secondListNode = new ListItem<T>(item); // I don't know whether
//It would or not as I am stuck in the first part.
Это должно быть сделано с использованием формата 2-D так, пожалуйста, просто придерживаться ограничений. Любое другое полезное предложение по этой проблеме было бы полезно. Спасибо заранее.
Почему вы думаете, что делать это со связанным списком было бы «более полезным»? Связанные списки - это ужасная структура данных и практически всегда используются в школьных заданиях. – jalf
Так как бы я сделал вектор внутри узла ??? – DeadCoder