两数相加Python解法
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
你可以假设除了数字 0 之外,这两个数都不会以 0 开头。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/add-two-numbers
例:
输入:l1 = [2,4,3], l2 = [5,6,4] 输出:[7,0,8] 解释:342 + 465 = 807.
# 解析:创建新链表,每个节点相加,记录是否进位,新链表的节点为进位加两个链表的节点和的个位。最后一位若有进位,则继续新增一个节点即可。
# 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:re = ListNode(0) # 新建链表头结点r = re # 头结点carry = 0 # 进位while (l1 or l2): # l1或l2有一个存在即可x = l1.val if l1 else 0 # l1当前节点的值y = l2.val if l2 else 0 # l2当前节点的值s = carry + x + y # 进位加l1和l2的值carry = s // 10 # 判断是否进位r.next = ListNode(s%10) # 去和的个位部分r=r.next # 指向下一个节点if(l1!=None): l1=l1.next # 若l1不为空,则l1指向下一个节点if(l2!=None): l2=l2.next # 若l2不为空,则l2指向下一个节点if(carry>0): # 如果最后还存在进位r.next = ListNode(1) # 创键新节点用来存储最高位return re.next # 返回头结点之后的节点,头结点未参与计算
两数相加Python解法相关推荐
- 两数相加python代码实现(leetcode2)
题目描述: 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来 ...
- Leetcode 2 两数相加 Python
给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和 ...
- 两数之和Python解法
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同 ...
- LeetCode第二题:两数相加(Add Two Numbers)
LeetCode第二题:两数相加(python,java) You are given two non-empty linked lists representing two non-negative ...
- python两数相加代码_一边学编程,一边学语数外,用python编程全排列10以内两数加法...
原标题:一边学编程,一边学语数外,用python编程全排列10以内两数加法 编程并不神秘 编程只是解决问题的一共方法 python是一门编程语言 python是一种解决问题的编程工具 在小学阶段,学习 ...
- python两数相加取_Leetcode_两数相加_Python
小编从今天起要开始分享一些Leedcode代码,通过好好练习编程能力,争取以后找一份好工作. 题目:两数相加 # Definition for singly-linked list. # class ...
- python 链表两数相加
| 两数相加 给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. 请你将两个数相加,并以相同形式返回一个表示和的链表. 你可以假设 ...
- python两个数相加时_两数相加 leetcode Python
给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表. 你可以假设除了数字 0 之外,这两个数字都不会以零开头. 示例: 输入:(2 -& ...
- python两数相加有进退位_Leetcode_两数相加_python
小编从今天起要开始分享一些Leetcode代码,通过好好练习编程能力,争取以后找一份好工作. 题目:两数相加 # Definition for singly-linked list. # class ...
最新文章
- EMC升级Celerra 支持闪存及重复数据删除
- 如何应对一直变化的搜索引擎算法?
- mysql子查询教行子查询_MySQL中列子查询与行子查询操作的学习教程
- sap百分数表示Demo
- labuladong 的算法小抄_来自GitHub 68.8k star的硬核算法教程
- Tuxera NTFS教程:在Mac上如何将MS-DOS文件系统格式化为NTFS文件系统?
- 如何用axure绘制图表_用Python绘制手绘风格的图表
- 用matlab求三重积分格式,matlab求三重积分
- 串口转发工具 串口屏调试神器 PC串口监视神器
- 手机麦克风结构原理图_麦克风工作原理是什么
- 车架号 生成 java_JAVA匹配车架号以及生成虚拟车架号
- mac打开网页速度特别慢
- matlab共轭梯度法解线性方程组,计算方法——共轭梯度法求解线性方程组.pdf
- 求解TSP问题(python)(穷举、最近邻居法、opt-2法、动态规划、插入法)
- ES6 里的symbol
- String字符串方法
- 果园篱笆c语言算法,凸包问题(果园篱笆)
- Matlab中ylim函数的使用
- C# XML 与 String 互转
- 三维数字虚拟GIS沙盘教程第30课:电子地图数据来源分析
热门文章
- SAP UI5 应用开发教程之五十七 - 基于 OData 注解的 Smart Field 使用方法学习试读版
- SAP UI5 数据绑定之高级技巧 - Type System
- 2021年6月3日,SAP 全球蓝宝石大会将在线上盛大启幕
- rxjs 里的pipe operator
- 从SAP Leonardo到SAP Data Intelligence
- SAP Fiori Elements edit按钮的实现细节
- SAP UI5 ABAP repository的handler class
- 阮一峰react demo代码研究的学习笔记 - demo4 debug - create element and Render
- 阮一峰react demo代码研究的学习笔记 - demo7 debug - how ref node is attached
- what does packaging mean in pom.xml