《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~

相关推荐
AI科技星4 分钟前
时空几何:张祥前统一场论20核心公式深度总结
人工智能·线性代数·算法·机器学习·生活
专注于大数据技术栈8 分钟前
java学习--HashSet
java·学习·哈希算法
菜鸟233号9 分钟前
力扣518 零钱兑换II java实现
java·数据结构·算法·leetcode·动态规划
扶苏-su9 分钟前
Java--标准输入输出流
java·开发语言
szm022526 分钟前
Spring
java·后端·spring
进阶的小名37 分钟前
[超轻量级延时队列(MQ)] Redis 不只是缓存:我用 Redis Stream 实现了一个延时MQ(自定义注解方式)
java·数据库·spring boot·redis·缓存·消息队列·个人开发
短剑重铸之日39 分钟前
《7天学会Redis》Day 6 - 内存&性能调优
java·数据库·redis·缓存·7天学会redis
石头wang40 分钟前
jmeter java.lang.OutOfMemoryError: Java heap space 修改内存大小,指定自己的JDK
java·开发语言·jmeter
咋吃都不胖lyh1 小时前
Haversine 距离算法详解(零基础友好版)
线性代数·算法·机器学习