首页 > 其他分享 >每日一题7

每日一题7

时间:2023-03-01 17:15:08浏览次数:40  
标签:ListNode val 每日 next l2 l1 一题 null

每日一题7

题目:2. 两数相加

image-20230301165752621

/**
 * 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 head = null, tail = null;
        int carry = 0;
        while (l1 != null || l2 != null) {   
            int n1 = l1 != null ? l1.val : 0;     //如果后续节点为空,则赋值为0,如果不这样处理会报错
            int n2 = l2 != null ? l2.val : 0;
            int sum = n1 + n2 + carry;           
            if (head == null) {
                head = tail = new ListNode(sum % 10);   // 解决了首节点为0的问题
            } else {
                tail.next = new ListNode(sum % 10);   // tail指针遍历整个链表
                tail = tail.next;
            }
            carry = sum / 10;  
            if (l1 != null) {
                l1 = l1.next;    //l1链表遍历
            }
            if (l2 != null) {
                l2 = l2.next;   //l2链表遍历
            }
        }
        if (carry > 0) {    //如果最后一个节点的和大于10,则对应产生的进位要多加一个节点
            tail.next = new ListNode(carry);
        }
        return head;
    }
}


标签:ListNode,val,每日,next,l2,l1,一题,null
From: https://www.cnblogs.com/ZLey/p/17168915.html

相关文章

  • 每日算法--2023.3.1
    1.剑指offer47--礼物的最大价值classSolution{publicintmaxValue(int[][]grid){intm=grid.length,n=grid[0].length;int[][]dp=......
  • 尚硅谷_每日一考_239+282+309
    2391.构造器的作用是什么?使用中有哪些注意点创建对象、初始化对象结构构造方法名与类名相同和方法并列的结构类一定有构造器不能有返回值也不能加void构造方法只能......
  • 尚硅谷_每日一考_88+111+134+152
    1111.switch后面的表达式可以是哪些数据类型的。byte、short、char、int、枚举类型变量、String类型2.switch-case、if-else、三元运算符使用场景的理解。都表示分支,优......
  • 2023.2.27AcWing蓝桥杯集训·每日一题
    复习的知识点为哈希。AcWing840.模拟散列表题目描述维护一个集合,支持如下几种操作:Ix,插入一个数\(x\);Qx,询问数\(x\)是否在集合中出现过;现在要进行\(N\)次操......
  • 每日总结2023/2/28
    今天,上了口语,数据库,以及python,收获很大,主要每节课都认真听了,然后晚上回来学习了会Android,学习了两个小时,什么收获都没有,主要遇到bug解决不了,看了个四小时速成的一些视频,讲......
  • 2023.2.28周二每日总结
    今天下午的课上学习了python的一些基础,知道了python中存储数据的方法,即每个数据存在一个独特的地址不需要提前申请变量,包裹一些列表的乘法是怎么分配的,并且进一步学习了ja......
  • 第三周星期二每日总结
    Javaweb简易程序的完善:   今日完善了上周测试的web程序修改功能,做出了最终的修改功能,对于修改功能一直是我以前不太会的点,之前我会修改的函数的编写,但是不太明确在j......
  • 每日总结 2.28
    今天学习python的基础语法数据类型的学习,学习了数组的计算和地址查找。课后回到宿舍学习了java编写app的逻辑代码。packagecom.example.xx.frg_recod;importandroi......
  • 2/28每日总结
    今天上学习了数据库原理和英语准备四级,但下午发烧严重就请了半天假,晚上退烧之后学习了Android的布局的代码:<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmln......
  • 2.28每日总结——安卓
       今天,简单了解了一下线性布局,还学习了一下昨天上课的内容(最长英语链接龙),简单的实现了几个单词的写入与输出。还没法实现《飘》的接龙。安卓这块还没怎么学,接下来......