目录
前言1. 题目描述2. 代码实现3. 运行结果4. 题目链接
后语
前言
你好,我是Dr.叶子,用心写最优美的博客,弹最好听的钢琴!
1. 题目描述
【难易度:中等】
给出两个 非空 的链表用来表示两个非负的整数。
其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。
如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。
您可以假设除了数字 0 之外,这两个数都不会以 0 开头。
示例 1:
输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8
解释: 342 + 465 = 807
2. 代码实现
Python3 实现
class Solution:
def addTwoNumbers(self
, l1
: ListNode
, l2
: ListNode
) -> ListNode
:
l3
= head
= ListNode
()
on_num
= 0
while l1
or l2
:
val_1
= l1
.val
if l1
else 0
val_2
= l2
.val
if l2
else 0
sum_val
= val_1
+ val_2
+ on_num
on_num
= 1 if sum_val
>= 10 else 0
l3
.next = ListNode
(sum_val
% 10)
l1
= l1
.next if l1
else l1
l2
= l2
.next if l2
else l2
l3
= l3
.next
if on_num
:
l3
.next = ListNode
(1)
return head
.next
3. 运行结果
4. 题目链接
腾讯精选练习 50 题 2. 两数相加.
后语
原创内容,转载说明出处哦!以上内容本人整理,亲测可行,如有任何问题,敬请指正,谢谢~~点赞、收藏、也欢迎打赏,我弹钢琴你听呀~~哈哈!