Я очень новичок в Java и столкнулся с некоторыми проблемами при изучении LinkedList.
Я застрял в этой проблеме: напишите метод takeSmallerFrom, который сравнивает два списка целых чисел, убедившись, что первый список имеет меньшие значенияв соответствующих позициях.Любой из списков может быть длиннее другого.
И мое решение для попытки ниже:
public void takeSmallerFrom(LinkedIntList other) {
if(front != null && other.front != null) {
ListNode temp = front.next;
ListNode prev = front;
if(front.next != null && other.front != null) {
if(front.data > other.front.data) {
front.next = other.front.next;
other.front.next = temp;
front = other.front;
other.front = prev;
}
ListNode current = other.front;
while(prev.next.next != null && current.next.next != null) {
if(prev.next.data > current.next.data) {
temp = prev.next;
prev.next = current.next;
current.next = temp;
temp = temp.next;
current.next.next =prev.next.next;
prev.next.next = temp;
}
prev = prev.next;
current = current.next;
}
}
}
Результат показывает, что мое решение не удалось после первого ListNode, но я не могу найтипричина, почему остальные из них не удалось.Я действительно застрял в этом, если кто-то здесь может мне помочь, спасибо!
Извините, я не уточнил: «фронт» означает голову, которая ведет мой LinkedList
Целое решениедля специального LinkedList, который хранит только int, поэтому мне нужно сравнить каждое значение int в этих LinkedLists соответственно