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

相关推荐
逑之6 分钟前
C语言笔记11:字符函数和字符串函数
c语言·笔记·算法
栈与堆20 分钟前
LeetCode-1-两数之和
java·数据结构·后端·python·算法·leetcode·rust
不知名XL25 分钟前
day20 回溯算法part02
算法
嵌入式进阶行者28 分钟前
【算法】TLV格式解析实例:华为OD机考双机位A卷 - TLV解析 Ⅱ
数据结构·c++·算法
OC溥哥99934 分钟前
Paper MinecraftV3.0重大更新(下界更新)我的世界C++2D版本隆重推出,拷贝即玩!
java·c++·算法
Jayden_Ruan36 分钟前
C++蛇形方阵
开发语言·c++·算法
星火开发设计38 分钟前
C++ map 全面解析与实战指南
java·数据结构·c++·学习·算法·map·知识
执笔论英雄38 分钟前
【RL] advantages白化与 GRPO中 advantages均值,怎么变化,
算法·均值算法
*才华有限公司*40 分钟前
RTSP视频流播放系统
java·git·websocket·网络协议·信息与通信
2301_8008951041 分钟前
hh的蓝桥杯每日一题
算法·职场和发展·蓝桥杯