力扣2.两数相加

题目描述

在这里插入图片描述
把题读懂后,这道题存在两个需要解决的问题:1.进位问题;2.两个链表长度不一

代码

class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {//创建新链表的伪指针,指向链表的头结点ListNode prev = new ListNode(0);//表示进位的值int carry = 0;//定义当前正在进行两数之和的指针ListNode cur = prev;while(l1 != null || l2 != null){//循环后,假如l1或者l2出现空值,就用0填补,这样就解决了问题2:两个链表长度不一的问题int x = l1 == null ? 0 : l1.val;int y = l2 == null ? 0 : l2.val;//(进位,和,存到链表里的数值),这三者之间的先后顺序很重要//第一,先加上当前的进位计算和int sum = x + y + carry;//第二,由这个和,计算给到下一位的进位carry = sum / 10;//第三,给到下一位的进位计算完了,才轮到计算存到链表里的数值sum = sum % 10;cur.next = new ListNode(sum);//当前两数之和计算完了,移到下一位cur = cur.next;//当前数不为空时,移到下一位接着计算;要是当前数为空,那就更方便了,直接到下一次循环开始时,会直接赋值为0if(l1 != null){l1 = l1.next;}if(l2 != null){l2 = l2.next;}}//当最后两个数计算完后,可能会产生进位,但最多也就进位1,直接创建个新结点,把1放进去if(carry == 1){cur.next = new ListNode(carry);}//返回整个链表return prev.next;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/229314.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

选择更灵活的设计工具:SOLIDWORKS 软件网络版与单机版的比较

随着科技的飞速发展,工程设计领域对于高效、灵活的设计工具需求日益增加。SOLIDWORKS 作为一款广受欢迎的三维设计软件,提供了网络版和单机版两种选择。在本文中,我们将深入探讨这两个版本的区别,并为您详细介绍它们的价格差异。 …

如何通过Portal实现消息集成

在数字化时代浪潮下,信息的流通与交互已变得至关重要,不论是在企业内部日常协作,还是与外部客户的紧密沟通,信息的快速、准确、实时传递都成为了确保业务顺畅进行的关键因素、决策精准的核心要素。 为了满足这种日益增长的需求&a…

超实用电脑技巧分享,快速提高工作效率!

“我是个刚开始学习使用电脑的新手,想问问大家有什么比较好用的电脑使用技巧可以推荐一下吗?非常感谢!” 在使用电脑时,如果我们适当掌握一些技巧,可以有效提高效率。那么,今天小编就给大家分享一些常见的电…

类 —— 友元、常/静态成员函数

类 类的大小 和结构体大小求法一致。但需注意,普通空类也会占用 1 字节大小,因为普通空类可以实例化对象。 而 抽象空类占 4 字节(32 位机中),因为抽象空类中含有虚指针(含有虚函数的非抽象空类同理&am…

leetcode:455. 分发饼干

一、题目 原题链接:455. 分发饼干 - 力扣(LeetCode) 函数原型:int findContentChildren(int* g, int gSize, int* s, int sSize) 二、思路 将胃口数组和饼干尺寸数组降序排序 遍历两个数组,从胃口数组中找到符合饼干尺…

xcode opencv

1、导入报错 Undefined symbols: linker command failed with exit code 1 (use -v to see invocation) 直接添加如下图内容即可

【Python基础】爬取豆瓣电影Top250+爬取知乎专栏文章标题

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…

队列的实现

1.队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出 FIFO(First In First Out) 入队列:进行插入操作的一端称为队尾出队列:进行删除操作的一端称为队头 …

局域网协议:ICMP (Internet Control Message Protocol,互联网控制消息协议)

ICMP(Internet Control Message Protocol,互联网控制消息协议)是用于在IP网络中传递控制消息的协议。它通常被用于网络设备之间交换状态信息和错误报告,以及执行网络诊断和故障排除。 文章目录 ICMP主要功能ICMP的工作原理ICMP消…

2020年6月9日 Go生态洞察:VS Code Go扩展加入Go项目

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

信息可视化在数字孪生中的应用:打造直观决策支持系统

在当今的数字化时代,数字孪生和信息可视化已成为推动各行业发展的重要力量。数字孪生为物理世界提供了一个虚拟的副本,而信息可视化则将复杂的数据以易于理解的方式呈现出来。两者之间的关系密切,相辅相成,为决策者提供了更全面、…

ssm购物商城系统

摘 要 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此商城购物信息的…