Я реализовал функцию для объединения отсортированных связанных списков, но последний узел не объединяется.если я устанавливаю current.next на l2, я получаю бесконечный цикл.если я удаляю это, это работает, но без последнего узла, присоединенного к новому списку.Что я делаю не так?
def merge(self,l1,l2):
if l1.val < l2.val:
current = l1
l2 = l2
else:
current = l2
l2 = l1
while(current != None):
if current.next == None and l2 != None:
#current.next = l2 infinite loop if I include this
elif current.next.val > l2.val:
temp = current.next
current.next = l2
l2 = temp
current = current.next
self.printList(current)
List1: 5 7 16
list2: 2 4 6 8 10
Ожидаемый 2 4 5 6 7 8 10 16
, Текущий результат 2 4 5 6 7 8 10