day35(12.16)——leetcode面试经典150

2. 两数相加

2. 两数相加

这道题唯一的难点就是cur如何往后移

题目:

题解:

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        ListNode list  = new ListNode(0);
        ListNode cur = list;
        int y = 0;
        while(l1 != null && l2 != null) {
            cur.next = new ListNode((l1.val + l2.val + y) % 10);
            y = (l1.val + l2.val + y) / 10;  
            l1 = l1.next;
            l2 = l2.next;
            cur = cur.next;
        }
        while(l1 != null) {
            cur.next = new ListNode((l1.val + y) % 10);
            y = (l1.val + y) / 10; 
            l1 = l1.next;
            cur = cur.next;
        }
        while(l2 != null) {
            cur.next = new ListNode((l2.val + y) % 10);
            y = (l2.val + y) / 10;
            l2 = l2.next;
            cur = cur.next;
        }
        if(y != 0) {
            cur.next = new ListNode(y);
            cur = cur.next;
        }
        //当前头是虚拟头,所以真正的链表是next之后的
        return list.next;
    }
}
相关推荐
变量未定义~42 分钟前
最小生成树1(Prim模板)、最小生成树2(kruskal模板)、最近公共祖先(模板)
算法
这就是佬们吗1 小时前
Python入门⑤-异常处理、文件操作与实战项目
开发语言·数据库·python·算法·pycharm
LONGZETECH1 小时前
新能源汽车充电设备装配与调试仿真教学软件 技术架构与核心实现解析
大数据·算法·3d·unity·架构·汽车
自学小白菜1 小时前
关于提升机器学习算法做预测回归任务精度的方法分享
算法·机器学习·回归·提升精度
学废了wuwu1 小时前
从入门到实战:深入浅出模型压缩三大核心——剪枝、彩票假设与知识蒸馏
人工智能·算法·剪枝
小肝一下1 小时前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra
劈星斩月1 小时前
监督学习算法 之 决策树
学习·算法·决策树
学计算机的计算基1 小时前
操作系统内存管理全解:虚拟内存、页表、COW、malloc、OOM一篇搞定
java·笔记·算法
tachibana21 小时前
hot100 前 K 个高频元素(347)
java·数据结构·算法·leetcode
程序员爱钓鱼2 小时前
Go 开发环境安装(Windows、macOS、Linux)
后端·面试·go