В настоящее время я пытаюсь изучить, как связанные списки работают на C++, и я столкнулся с проблемой удаления определенного значения в связанном списке. Я понимаю, как удалить первый экземпляр определенного значения, и там нет проблем. Однако я не могу окунуться в вопрос, как удалить все экземпляры некоторого значения в связанном списке. Я вижу, как удалить любой экземпляр значения в начале и середине списка, но затем я застрял один раз, когда l-> next - nullptr. Если l-> next является nullptr, то как бы я перенаправил указатель от значения до значения после значения, которое нужно удалить?C++: Как удалить все вхождения значения в связанном списке
Прошу прощения, если это повторяющийся вопрос; Я удалю его, если это так.
Не зная ничего о вашей реализации и только угадывая из очень ограниченной информации, которую вы предоставили нам в своем коде, вы можете сохранить указатель на предыдущий узел в отдельной переменной. –
На самом деле, я не выполняю эту функцию remove; Мне просто интересно, как удалить узел, который находится в конце связанного списка. – MistFTW
Вы делаете это точно так же: следите за * предыдущим * узлом. –