支付网站建设费入什么科目,物流门户网站源码,做衣服哪个网站好,南宁手机网站开发策划文章目录 题目链接解题思路解题代码 题目链接
2. 两数相加
给你两个 非空 的链表#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的#xff0c;并且每个节点只能存储 一位 数字。
请你将两个数相加#xff0c;并以相同形式返回一个表示和的链表。 … 文章目录 题目链接解题思路解题代码 题目链接
2. 两数相加
给你两个 非空 的链表表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的并且每个节点只能存储 一位 数字。
请你将两个数相加并以相同形式返回一个表示和的链表。
你可以假设除了数字 0 之外这两个数都不会以 0 开头。
示例 1 输入l1 [2,4,3], l2 [5,6,4] 输出[7,0,8] 解释342 465 807.
示例 2 输入l1 [0], l2 [0] 输出[0]
示例 3 输入l1 [9,9,9,9,9,9,9], l2 [9,9,9,9] 输出[8,9,9,9,0,0,0,1]
解题思路
result用于返回结果list的头节点head用于遍历
百里七_大风起兮_评论解读:head和result最初指向的是同一个地址不同的是result是不变的head不断移动连接了一条链表也就是说result指向head所在的那条链表的首地址链表结构的特点就是找到首地址就可以表示整条链表了。result.next是为了排除值result.val为0的结点。
解题代码
class Solution:def addTwoNumbers(self, l1: ListNode, l2: ListNode) - ListNode:carry0headresultListNode(0)while l1 or l2 or carry:t l1.val if l1 else 0t(l2.val if l2 else 0)head.nextListNode((tcarry)%10)headhead.nextcarry1 if tcarry10 else 0l1l1.next if l1 else l1l2l2.next if l2 else l2return result.next