《leetcode hot100》2. 两数相加

思路:

其实就是进行模拟,模拟我们正常的十进制加法;

备注:int num //指的是当前位之前的剩余进位和

注意点:

1.如果当模拟结束后num仍>0,那么还有加入一个尾节点大小为num

up的收获(QWQ):

复制代码
 tail.next = new ListNode((sum+num) % 10);//next是ListNode类型要new对象
            tail = tail.next;

当默认我们new 一个ListNode,那么他的next默认是null,你不能直接

tail.val=(sum+num)%10;

tail=tail.next;

还是太菜了,但是还没到终点前,都不会太晚!,平时都是用c++打算竞(QAQ)

好了,Accode如下

(尽情食用!)

复制代码
class Solution {
    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        ListNode head = new ListNode();
        ListNode tail = head;
        int num = 0;
        while (l1 != null || l2 != null) {
            
            int sum=0;//求当前位和
            if(l1!=null)sum+=l1.val;
            if(l2!=null)sum+=l2.val;

            tail.next = new ListNode((sum+num) % 10);//next是ListNode类型要new对象
            tail = tail.next;

            num = (sum+num) / 10;

            if (l1 != null)  l1 = l1.next;
            if (l2 != null)  l2 = l2.next;
        }
        if (num > 0) {//注意
            tail.next = new ListNode(num);
        }
        return head.next;
    }
}

over~

相关推荐
wabs66617 分钟前
关于动态规划【力扣1035.不相交的线和53.最大子数组和的思考】
算法·leetcode·动态规划
退休倒计时18 分钟前
【每日一题】LeetCode 199. 二叉树的右视图 TypeScript
算法·leetcode·typescript
可编程芯片开发21 分钟前
通过MATLAB实现PID控制器,积分分离控制器以及滑模控制器
算法
Tian_Hang27 分钟前
Eclipse Ditto 的权限策略
java·服务器·前端·网络·ide·ubuntu·eclipse
小蓝波1 小时前
docker 的命令
java·docker·容器
kebidaixu1 小时前
两轮BMS 短路保护策略详解
算法
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第155题】【06_Spring篇】第15题:Spring 如何解决循环依赖问题?
java·spring·循环依赖·三级缓存·aop代理
zwenqiyu1 小时前
非线性字符串数据结构串讲
数据结构·c++·学习·算法
z小猫不吃鱼1 小时前
03 Optimal Brain Surgeon 详解:Hessian 剪枝为什么有效?
算法·机器学习·剪枝
唐青枫1 小时前
Java Maven 实战指南:从 POM、依赖管理到多模块构建
java