首页 > 其他分享 >lc2

lc2

时间:2024-04-26 15:16:01浏览次数:16  
标签:lc2 val next l2 l1 carry ListNode

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。

请你将两个数相加,并以相同形式返回一个表示和的链表。

你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

 1 # Definition for singly-linked list.
 2 # class ListNode:
 3 #     def __init__(self, val=0, next=None):
 4 #         self.val = val
 5 #         self.next = next
 6 class Solution:
 7     def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode], carry = 0) -> Optional[ListNode]:
 8         if not l1 and not l2 and carry == 0:
 9             return None
10         val1 = l1.val if l1 else 0
11         val2 = l2.val if l2 else 0
12         sum = val1 + val2 + carry
13         carry = sum // 10
14         node = ListNode(sum % 10)
15         node.next = self.addTwoNumbers(l1.next if l1 else None, l2.next if l2 else None, carry)
16         return node

 

标签:lc2,val,next,l2,l1,carry,ListNode
From: https://www.cnblogs.com/zxc5612301/p/18160104

相关文章

  • 代码随想录 Day3 数组 | LC977 有序数组的平方 & LC209 长度最小的子数组(滑动窗口))
    四、有序数组的平方题目:力扣977:有序数组的平方给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例1:输入:nums=[-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为[16,1,0,9,100]排序后,数组变为[......
  • lc2940 找到Alice和Bob可以相遇的建筑
    给出数组H[n]和多组询问Q[m],其中Q[i]={a[i],b[i]}表示查询最靠左的下标j,使得a[i]和b[i]都可以移到j处。从x处能移到y处的前提是x<y并且H[x]<H[y]。1<=n<=5e4;1<=H[i]<=1e9;1<=m<=5e4;0<=a[i],b[i]<=n-1相当于找最靠左的上限,可以用st表或线段树来维护区间最大值,然后二分找最左......
  • lc2312 卖木头块
    给定高为m、宽为n的木块,同时给出prices[i]={h[i],w[i],price[i]},表示高为h[i]、宽为w[i]的木块可以卖得price[i]的钱。切割木块时只能水平或垂直一切到底,木块不能旋转,切割次数不限,求最多能卖多少钱。1<=m,n<=200;1<=prices.length<=2e4;1<=h[i]<=m;1<=w[i]<=n;1<=price[i]<=1......
  • lc2781 最长合法子字符串的长度
    给定长度为n且只包含小写字母的字符串word和禁用字符串数组forbidden,如果一个字符串不包含forbidden中的任何字符串,则称其为合法。求word中最长合法子字符串的长度,子字符串可以为空。1<=n<=1e5;1<=forbidden.length<=1e5;1<=forbid[i].length<=10注意到forbid[i]长度最大只有1......
  • lc2953 统计完全子字符串的数目
    给定只包含小写字母的字符串word和整数k,如果s的某个子串中每个字符恰好出现k次,并且相邻字母最多相差2,则称其为完全字符串。求word中完全字符串的数目。1<=word.length<=1e5;1<=k<=word.length预处理出每个字母出现次数的前缀和,这样可以O(1)得到区间[l,r]内某个字母的出现次数。......
  • lc2528 最大化城市的最小电量
    给定数组st[n],其中st[i]表示第i座城市的供电数目,每个供电站的供电范围是r,一座城市的电量是所有能给它供电的供电站数目之和,现在还可建k座发电站,求所有城市中最小电量的最大值。1<=n<=1e5;0<=st[i]<=1e5;0<=r<n;0<=k<=1e9最大化最小值,或者最小化最大值,常用的方法是二分答案。......
  • lc2963 统计好分割方案的数目
    给定正整数数组nums[n],将数组分割成1个或多个连续子数组,如果不存在包含了相同数字的两个子数组,则认为是一种好分割方案,求好分割方案的数目,结果对1000000007取模。1<=n<=1e5;1<=nums[i]<=1e9相同的数字只能分到同一个子数组,转化成区间合并问题。然后枚举每个可以分割的位置,选或......
  • lc2334 元素值大于变化阈值的子数组
    给定数组nums[n]和整数threshold,找到长度为k的子数组,满足子数组中每个元素都大于threshold/k,返回满足条件的任意一个k即可,如不存在,返回-1。1<=n<=1e5;1<=nums[i],threshold<=1e9子数组每个元素都大于t,也就是最小值大于t。对于固定的最小值,显然子数组越长越有可能满足条件,因此考......
  • lc2104 子数组的范围和
    给定数组nums[n],子数组的范围指子数组中最大元素与最小元素的差值,返回nums中所有子数组的范围之和。子数组是数组的连续非空序列。1<=n<=1000;-1e9<=nums[i]<=1e9分别考虑每个元素作为最小和最大值的情况,统计作为最小值的次数,作为最大值的次数,这个可以用单调栈求出,然后统计各位......
  • lc2250 统计包含每个点的矩形数目
    有n个矩形,第i个矩形左下角在(0,0)处,右上角在(l[i],h[i])。另给出m个点(x[i],y[i]),问有多少个矩形覆盖了这个点,点在边上也算是覆盖。1<=n,m<=5e4;1<=l[i],h[i]<=1e9;1<=h[i],y[i]<=100;所有矩形互不相同,所有查询点互不相同。二维偏序统计问题,可以离线处理,先对其中一维排序,将......