给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。

如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。

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

示例:

输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
输出:7 -> 0 -> 8
原因:342 + 465 = 807

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/add-two-numbers
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
————————

/**  // 自定义的结构体* Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {public:ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {if(l1==NULL)return l2;if(l2==NULL)return l1;ListNode* ll = new ListNode(1);  // 创建一个链表ListNode* l = ll;  // ll用于保存链表开始地址,l用于更新链表int num1 = 0;int num2 = 0;int flag = 0;while(l1!=NULL || l2!=NULL){if(l1!=NULL)num1 = l1->val;elsenum1 = 0;if(l2!=NULL)num2 = l2->val;elsenum2 = 0;int num = flag + num1 + num2;flag = num/10;l->next = new ListNode(num%10);if(l1!= NULL)l1 = l1->next;if(l2!= NULL)l2 = l2->next;l = l->next;}if(flag == 1)  // 因为可能存在在最高位有进位的情况,所以得考虑到l->next = new ListNode(1);return ll->next;}
};

leetcode —— 2. 两数相加 (对于链表更新的细节)相关推荐

  1. [链表遍历|模拟] leetcode 2 两数相加

    [链表遍历|模拟] leetcode 2 两数相加 1.题目 题目链接 给出两个非空的链表用来表示两个非负的整数.其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字. 如果 ...

  2. 20200114:(leetcode)两数相加

    两数相加 题目 主要思路 代码实现 题目 注意点:不以0开头 主要思路 逐个相加即可,注意需要逆序加,注意进位即可: 由于数字是个位数的,因此进位只有可能是0或者1: 注意定义的有参构造器. 代码实现 ...

  3. LeetCode 445. 两数相加 II(链表大数加法)

    1. 题目 给定两个非空链表来代表两个非负整数.数字最高位位于链表开始位置.它们的每个节点只存储单个数字.将这两数相加会返回一个新的链表. 你可以假设除了数字 0 之外,这两个数字都不会以零开头. 进 ...

  4. LeetCode 2 两数相加(链表)

    题目要求: 给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表. 你可以假设除了数字 0 之外,这两个数字都不会以零开头. 示例: 输入 ...

  5. LeetCode 2 两数相加

    给定两个非空链表来代表两个非负数,位数按照逆序方式存储,它们的每个节点只存储单个数字.将这两数相加会返回一个新的链表. 你可以假设除了数字 0 之外,这两个数字都不会以零开头. 示例: 输入:(2 - ...

  6. LeetCode:2. 两数相加(中等)

    2. 两数相加(中等) 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 把俩个链表对应位相加,如果大于等于10,对10取余,小于10,直接得到这一位 解题过程存在这样几个问题: 1.进行循环 ...

  7. leetcode算法—两数相加 Add Two Numbers

    关注微信公众号:CodingTechWork,一起学习进步. 题目 Add Two Numbers: You are given two non-empty linked lists represen ...

  8. 【LeetCode 2】两数相加(链表)

    给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. 请你将两个数相加,并以相同形式返回一个表示和的链表. 你可以假设除了数字 0 ...

  9. LeetCode 2. 两数相加(单链表反转)

    题目链接:https://leetcode-cn.com/problems/add-two-numbers/ 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储 ...

最新文章

  1. sqlserver清除日志
  2. 多项式输出(NOIP2009 普及组第一题)
  3. No operations allowed after connection closed--转
  4. 【性能优化】之 BITMAP 及分区表 的演示
  5. 然爸读书笔记(2014-2)----影响力
  6. python右斜杠_Python中的左斜杠、右斜杠(正斜杠和反斜杠)
  7. Android打包编译shrinkResources true报错解决方案
  8. XSS-Game level 9
  9. 如何学习离散数学和在计算机科学中应用
  10. 色不迷人人自迷,情不伤人人自伤
  11. 设计模式在项目中的应用案例_案例|P6软件在水电项目施工管理中的应用
  12. java理论笔试题_Java基础笔试题及答案
  13. 常见的平面设计风格有哪些?
  14. 平面设计的核心本质是什么
  15. GMap.NET 使用教程【1】
  16. SpringBoot工程接入第三方支付渠道支付宝(C扫B支付)
  17. A - 简单密码(C语言)
  18. 小博老师解析Java核心技术 ——JDBC普通增删改操作
  19. 订单23系统服务器,死亡搁浅图文攻略 主线流程+订单系统+运送流程+建筑搭建 第3节芙拉吉尔 订单No23.系统服务器-游侠网...
  20. ELF文件格式, ELF文件是什么,里面包含什么内容

热门文章

  1. 如何word删除分隔符
  2. Linux的下载命令wget详解
  3. Revit二次开发之“为Ribbon设置快捷键”
  4. 前端面试:你应该了解的JS算法相关的知识
  5. Nginx配置文件示例
  6. 【Linux系列】Linux基础知识整理
  7. 判断两个数组有相同的数据
  8. 200-电影-《The secret life of Walter Mitty》
  9. 用js实现鼠标点击爱心特效
  10. C#LeetCode刷题之#455-分发饼干(Assign Cookies)