xxxQAQ? 2021-11-23 23:04 采纳率: 83.3%
浏览 14
已结题

为什么会有如下运行结果,我的ans为什么只返回了一个节点,其它例子也能正确返回全部节点。

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
        ans = l1      
        while l1 or l2:            
            if not l1:
                l1 = ListNode(val = 0)
            if not l2:
                l2 = ListNode(val = 0)
            l1.val += l2.val 
            if l1.val >= 10:                
                l1.val %= 10
                if l1.next:
                    l1.next.val += 1
                else:
                    l1.next = ListNode(val = 1)
            l1 = l1.next
            l2 = l2.next
        return ans

img

  • 写回答

1条回答 默认 最新

  • xxxQAQ? 2021-11-24 18:35
    关注

    这是力扣第二题,因为ans返回的是最开始的l1头节点,而这个头节点后面会因为l1长度不够提前指向none,那么问题来了,怎么返回遍历相加后的头节点

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月23日