当前位置: 首页 > wzjs >正文

沈阳公司百度seo分析工具

沈阳公司,百度seo分析工具,大连html5开发,wordpress做成app题目描述 解题思路 题目说的很详细了,也就是把每个数倒序写成链表进行输入,然后让你计算两个倒序数组的和,要保证跟预期的结果一样。 首先应该考虑的是两个数组的长度问题,对于链表的每一位进行加法运算,如果两个列表…

题目描述

在这里插入图片描述

解题思路

题目说的很详细了,也就是把每个数倒序写成链表进行输入,然后让你计算两个倒序数组的和,要保证跟预期的结果一样。

首先应该考虑的是两个数组的长度问题,对于链表的每一位进行加法运算,如果两个列表长度不一致,那么就需要在短的列表后面补零,然后再进行加法运算。

然后就是进位问题,对于每一位的加法运算,都需要考虑进位问题,也就是如果当前位的和大于等于10,那么就需要进位,然后在下一位的加法运算中加上进位。这是这题的难点。

最后就是链表这一数据结构本身的要求,链表只能通过指针遍历来访问每一个节点,所以需要注意指针的指向。

开始手搓!

题目已经给了链表的定义,所以我们可以直接使用这个数据结构。题目给出的的定义如下:

Definition for singly-linked list.
class ListNode:def __init__(self, val=0, next=None):self.val = valself.next = next

根据定义,我们可以通过.val获取指针所指向节点的值,通过.next获取指针所指向节点的下一个节点。

最后解题

我们可以定义一个新的链表,保存最后的运算结果;定义一个变量保存进位的值;然后通过判断链表是否结束,进行加法运算来确定新链表最新位的值和下一次的进位的值。

然后链表的指针和新链表的指针全部后移,继续循环。如果循环结束后进位不为0,那么就需要在新链表的末尾加上一个值为1的节点。

最后返回新链表的头节点。

class Solution:def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]:res = cur = ListNode()adder = 0while l1 or l2:num1 = l1.val if l1 else 0num2 = l2.val if l2 else 0cur.next = ListNode((num1+num2+adder)%10)adder = (num1+num2+adder)//10cur = cur.nextif l1: l1 = l1.nextif l2: l2 = l2.nextif adder: cur.next = ListNode(1)return res.next

尝试提交,通过,时间复杂度为O(Max(N,M)),其中N M为两个链表的长度。

在这里插入图片描述

http://www.dtcms.com/wzjs/292978.html

相关文章:

  • 网站地图提交今日重大事件
  • 武汉简单做网站seo刷点击软件
  • 做网站赚钱吗是真的吗设计好看的网站
  • 企业网站建设的成本网站优化外包
  • 做讲课ppt的网站优化关键词排名seo
  • app展示网站免费制作网站app
  • 网站建设排名政务百度2023免费
  • 平顶山做网站多少钱网络营销八大职能
  • 网站开发职业总结网站制作公司怎么样
  • 建站快车来电新闻式软文经典案例
  • 网页特效网站好的竞价托管公司
  • 网站平台建设呈现全新亮点外贸网站建设设计方案
  • 外国做营销方案的网站网络推广平台软件app
  • 原创音乐网站源码什么是seo文章
  • 网站建设用什么语言新闻今天的最新新闻
  • 做医疗设备的网站百度上免费创建网站
  • 专业做蜂蜜的网站百度互联网营销是什么
  • 管件网络销售怎么找客户seo优化排名易下拉软件
  • 做网站的关键词怎么判断好不好制作网站代码
  • 企业网站开发建设委托合同网站优化 秦皇岛
  • 全国十大猎头公司北京seo优化公司
  • 独立网卡推荐太原seo排名优化软件
  • 在线代理网页代理武汉seo和网络推广
  • 淄博网站建设 华夏国际青岛seo用户体验
  • 平安河南建设网站网站推广常用方法
  • WordPress网站接入公众号上海网站建设服务
  • 17一起做网站普宁站福建seo
  • 做网站后期续费是怎么算的网络推广100种方法
  • 有关做学校网站的毕业论文搜狗站长平台
  • 360提示的危险网站短视频推广引流