Реализация вдвойне связанного спискаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Реализация вдвойне связанного списка

Сообщение Anonymous »

Мне дали структуру для реализации вдвойне связанного списка. Я наткнулся на метод pushfront () . Метод должен добавить предоставленный элемент в переднюю часть связанного списка, и он должен вернуть адрес новому узлу головного узла. Таким образом, я могу назначить его PNEXT Pointer.
Метод pushfront () выглядит так:

Код: Выделить всё

Element* Element::PushFront(Element* d) {
Element* newElement = new Element(Data());    // Allocate space for new element
newElement->ElementData = d->ElementData;    // Assign ElementData to the new  element
newElement->pNext = // Head address
newElement->pPrev = NULL;

return nullptr;
}
< /code>
Конструктор класса элементов: < /p>
Element::Element(Data d) {
ElementData = d;
pNext = NULL;
pPrev = NULL;
}
< /code>
Класс данных: < /p>
Data::Data() {
Name = "Unknown";
SN = 0;
Program = "Unknown";
}

Data::Data(string NameStr, unsigned int sNumber, string Prog) :
Name(NameStr), SN(sNumber), Program(Prog) {};
< /code>
main: < /p>
Element* pList = new Element(Data("Cam", 12345, "Testing1"));
Element newE(Data("Bob", 335567, "Testing2"));
pList = pList->PushFront(&newE);
Насколько я понимаю, вы обычно предоставляете адрес головы при вызове pushfront (), однако, поскольку мне не предоставлено, что я не уверен в том, как я могу получить к нему.

Подробнее здесь: https://stackoverflow.com/questions/693 ... inked-list
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»