Проблема с добавлением элементов в конец связанного списка [закрыто]


Я пытаюсь добавить элемент в конец связанного списка, но он, кажется, не добавляет, Может кто-нибудь сказать мне, что не так с моим кодом спасибо. Мой связанный список не пуст

void LinkedList::Addelementfromback(VoidPtr horoscope)
{
   NodePtr temp = head;  

   while (temp != NULL)
   {
    temp=temp->next;
   }

    NodePtr element=new Node;

    element->data=horoscope;

    element->next=NULL;

    temp=element;
}
1 2

1 ответ:

temp является копией последнего значения next, которое равно NULL. Вы назначаете копию.

То, что вы должны были сделать, это остановить одну итерацию раньше. Затем сделайте, temp->next=element;

Чтобы остановить одну итерацию раньше, используйте: while (temp->next != NULL)