LeetCode2——Add Two Numbers(两个链表中的数字相加,形成新链表)
鄙人不才,故收录LeetCode中的解法和代码。
题目:
参考解法:
/*** 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) {ListNode preHead(0), *p = &preHead;int extra = 0;while (l1 || l2 || extra) {int sum = (l1 ? l1->val : 0) + (l2 ? l2->val : 0) + extra;extra = sum / 10;p->next = new ListNode(sum % 10);p = p->next;l1 = l1 ? l1->next : l1;l2 = l2 ? l2->next : l2;}return preHead.next;}
};
分析:这里主要有两个问题,一个是两个链表长度不一致时的处理,一个是相加>10时的数据处理。
- 参考解法中运用三目运算符,很好地解决了第一个问题。即长度不一致时,比较短的那个链表用空来表示,数据为0。
- 进位和结果位,分别用/和%运算得到。
LeetCode2——Add Two Numbers(两个链表中的数字相加,形成新链表)相关推荐
- LeetCode425——Add Strings(两个字符串中的数字相加(十进制或二进制),输出字符串形式的结果)
题目: 参考解法: class Solution { public:string addStrings(string num1, string num2) {if (num1.size() < ...
- java中怎么把两个JTextfield中的数字相加的值放到另一个JTextfield?_如何将jtextfield中的值解析为整数并对其执行一些数学操作?...
所以,我一直在尝试用Swing在Java中制作一个CelsiUS转换器,并坚持从 JTextField 把它解析成一个整数,这样我就可以对它执行一个方程.如果我把它作为 String 我不能做任何数学 ...
- LeetCode: 2_Add Two Numbers | 两个链表中的元素相加 | Medium
题目: You are given two linked lists representing two non-negative numbers. The digits are stored in r ...
- 代码随想录Day04 | LeetCode24. 两两交换链表中的节点、LeetCode19. 删除链表的倒数第N个节点、LeetCode160. 链表相交、LeetCode142. 环形链表Ⅱ
LeetCode24. 两两交换链表中的节点 力扣题目链接 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点.你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换). 示例 ...
- 数据结构初阶(4)(OJ练习【判断链表中是否有环、返回链表入口点、删除链表中的所有重复出现的元素】、双向链表LinkedList【注意事项、构造方法、常用方法、模拟实现、遍历方法、顺序表和链表的区别)
接上次博客:数据结构初阶(3)(链表:链表的基本概念.链表的类型.单向不带头非循环链表的实现.链表的相关OJ练习.链表的优缺点 )_di-Dora的博客-CSDN博客 目录 OJ练习 双向链表--Li ...
- 判断链表中是否有环(环形链表)
题意: 给定一个链表,判断链表中是否有环. 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位 ...
- 链表题目---4 删除链表中重复的结点 和 判断链表是否为回文链表
删除链表中重复的结点 /* struct ListNode {int val;struct ListNode *next;ListNode(int x) :val(x), next(NULL) {} ...
- LeetCode 82. 删除排序链表中的重复元素 II(链表)
1. 题目 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4->4->5 输出 ...
- C语言从链表中删除素数,Data Structures 之 链表
链表(Linked List),由一系列不必在内存中相连的结构组成. 按C的约定,函数的声明都在头文件中,具体的Node声明在.c文件中. adt.h //按照C 的约定,作为类型的List表和Pos ...
最新文章
- python fileinput_python fileinput模块
- 关于addr=u32(r.recvuntil(‘\xf7‘)[-4:])的解释
- 官方一步解决各种Windows更新问题
- 通过开始关键字和结束关键字,查找所有的邮箱名称记录
- 开源项目GoodView点赞效果
- 什么?你做的差异基因方法不合适?
- codevs 3186 队列练习2
- 安装FirefoxSetup,在FirefoxSetup中安装firebug、firepath及简单的xpath使用
- FlashBuilder 4.6 破解序列号和方法
- 使用示波器测量运放带宽和压摆率
- 用python计算个人所得税计算器_教你使用Python实现新个税计算器
- 30天自制操作系统——第一天到第二天
- AMD和英特尔cpu区别
- 计算机网络技术专业职业生涯发展路径
- 系综理论(Ensemble Theory)
- win7系统 无法访问 Windows installer服务。Windows Installer 没有正确安装时
- 高性能计算与高性能计算机讲座笔记
- 前后端分离Oauth2.0 - springsecurity + spring-authorization-server —授权码模式
- 2022 第十三届蓝桥杯大赛软件赛省赛_PB python 大学 B 组 除了EFJ的题和解析
- python位置参数ppt_argparse模块的位置参数和可选(必选)参数