购物网站开发课程设计,安陆网站,海贼王路飞和女帝做的网站,为什么网站要域名文章目录 题目简介题目解答代码#xff1a; 题目链接 大家好#xff0c;我是晓星航。今天为大家带来的是 两数相加 相关的讲解#xff01;#x1f600;
题目简介 题目解答
通过题目给的第一个示例来解析 图解如下#xff1a; l1的2和l2的5首先相加变为7 这里相加结果为7… 文章目录 题目简介题目解答代码 题目链接 大家好我是晓星航。今天为大家带来的是 两数相加 相关的讲解
题目简介 题目解答
通过题目给的第一个示例来解析 图解如下 l1的2和l2的5首先相加变为7 这里相加结果为7进位为0 4和6相加结果是0但是进位为1 最后一位由3和4相加再加上一个进位1就是8
实战思路 第一步l1和l2不为空继续走而头结点为空所以直接将头节点和tail节点放入sum余10的结果值7中suml1.vall2.valcarry 第二步l1和l2不为空继续走而头结点不为空因此head不变将sum余10的结果值0存在tail.next中并将tail等于tail.next储存链表结构此时进位carry为1。 第三步l1和l2不为空继续走而头结点不为空因此head不变将sum余10的结果值7存在tail.next中而此时进位为1因此存入tail.next的值为8最后tail等于tail.next储存链表结构就形成了一个链表 代码
class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode head null, tail null;int carry 0;while (l1 ! null || l2 ! null) {int n1 l1 ! null ? l1.val : 0;int n2 l2 ! null ? l2.val : 0;int sum n1 n2 carry;if (head null) {head tail new ListNode(sum % 10);} else {tail.next new ListNode(sum % 10);tail tail.next;}carry sum / 10;if (l1 ! null) {l1 l1.next;}if (l2 ! null) {l2 l2.next;}}if (carry 0) {tail.next new ListNode(carry);}return head;}
}题目链接
2. 两数相加 - 力扣LeetCode
这里查找了一篇关于链表的文章觉得很不错便将链接记录下来了
java ListNode 链表 - 一文搞懂 - 博客园 (cnblogs.com)
感谢各位读者的阅读本文章有任何错误都可以在评论区发表你们的意见我会对文章进行改正的。如果本文章对你有帮助请动一动你们敏捷的小手点一点赞你的每一次鼓励都是作者创作的动力哦