力扣-2.两数相加

题目描述

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。

请你将两个数相加,并以相同形式返回一个表示和的链表。

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

cpp 复制代码
class Solution {
public:
    ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) {
        ListNode *l = new ListNode(-1);
        ListNode *p = l;
        int flag = 0;
        while (l1 && l2) {
            if (l1->val + l2->val + flag < 10) {
                p->next = new ListNode(l1->val + l2->val + flag);
                flag = 0;
            } else {
                p->next = new ListNode(l1->val + l2->val + flag - 10);
                flag = 1;
            }
            l1 = l1->next;
            l2 = l2->next;
            p = p->next;
        }
        while (l1) {
            if (l1->val + flag < 10) {
                p->next = new ListNode(l1->val + flag);
                flag = 0;
            } else {
                p->next = new ListNode(l1->val + flag - 10);
                flag = 1;
            }
            l1 = l1->next;
            p = p->next;
        }
        while (l2) {
            if (l2->val + flag < 10) {
                p->next = new ListNode(l2->val + flag);
                flag = 0;
            } else {
                p->next = new ListNode(l2->val + flag - 10);
                flag = 1;
            }
            l2 = l2->next;
            p = p->next;
        }
        if (flag == 1) {
            p->next = new ListNode(1);
        }
        return l->next;
    }
};

小结:上面的写法有一些冗余,但是思路看起来比较清晰,也是一遍过了

相关推荐
快乐的钢镚子2 小时前
【leetcode hot 100】49.字母异位词分组
python·leetcode
一念&4 小时前
每日一个C语言知识:C 头文件
c语言·开发语言·算法
tao3556677 小时前
【Python刷力扣hot100】42. Trapping Rain Water
开发语言·python·leetcode
Miraitowa_cheems7 小时前
LeetCode算法日记 - Day 88: 环绕字符串中唯一的子字符串
java·数据结构·算法·leetcode·深度优先·动态规划
B站_计算机毕业设计之家8 小时前
python电商商品评论数据分析可视化系统 爬虫 数据采集 Flask框架 NLP情感分析 LDA主题分析 Bayes评论分类(源码) ✅
大数据·hadoop·爬虫·python·算法·数据分析·1024程序员节
小白菜又菜8 小时前
Leetcode 1518. Water Bottles
算法·leetcode·职场和发展
长存祈月心9 小时前
Rust Option 与 Result深度解析
算法
杭州杭州杭州9 小时前
机器学习(3)---线性算法,决策树,神经网络,支持向量机
算法·决策树·机器学习
不语n11 小时前
快速排序(Quick Sort)详解与图解
数据结构·算法·排序算法·快速排序·双指针排序