@ObehanProger

Как добавить новый элемент в конец связанного списка Node без использования специальных методов?

Нужно реализовать метод addLastElement, который добавляет новый элемент в конец связанного списка и возвращает получившийся результат.
Если node передается как null, то вернуть Node состоящий из newData.
Нельзя подключать/использовать дополнительные классы/методы.
public static Node addLastElement(Node node, int newData) {
    if(node!=null){ 
        for (Node tmp = node; tmp != null; tmp = tmp.next) {
            
        if(tmp.next==null) {
            tmp.next=new Node(newData);
            return tmp;
        }
      }
    }
    return new Node(newData);
}

Данный код при переборе массива изменяет исходный и возвращает только два последних элемента, а предыдущие стирает.
Как можно решить, подскажите пожалуйста.
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Dmtm
Android
1) вот тут вместо
for (Node tmp = node; tmp != null; tmp = tmp.next) {

надо
for (Node tmp = node; tmp.next != null; tmp = tmp.next) {

2) после нахождения хвоста - выйти из цикла! (ссылку запомнить отдельно!) (а еще лучше и цикл заменить на while)
3) далее по заданию
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы