当前位置: 首页 > article >正文

8 两数相加

2. 两数相加 - 力扣(LeetCode)

题解:模拟

我们直接将两个头节点的值取出进行相加即可,相加完之后取余(就是只拿个位数的值),然后将其生成一个节点,穿起来即可,同时要记录其十位数字与下一次的链表头节点进行相加,这样一直迭代下去就可以了

class Solution {
    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        if(l1 == null) return l2;
        if(l2 == null) return l1;
        ListNode head = new ListNode(0);
        ListNode result = head;
        int record = 0;
        while(l1 != null && l2 != null) {
            int sum = l1.val+l2.val + record;
            int count = sum % 10;
            record = sum / 10;
            head.next = new ListNode(count);
            head = head.next;
            l1 = l1.next;
            l2 = l2.next;
        }
        while(l1 != null){
            int sum = l1.val + record;
            int count = sum % 10;
            record = sum / 10;
            head.next = new ListNode(count);
            head = head.next;
            l1 = l1.next;
        }
        while(l2 != null) {
            int sum = l2.val + record;
            int count = sum % 10;
            record = sum / 10;
            head.next = new ListNode(count);
            head = head.next;
            l2 = l2.next;
        }
        if(record != 0){
            head.next = new ListNode(record);
        }
        return result.next;
    }
}


http://www.kler.cn/a/596434.html

相关文章:

  • Elasticsearch 在航空行业:数据管理的游戏规则改变者
  • 香橙派连接摄像头过程
  • 网络安全之前端学习(HTML属性篇)
  • RabbitMQ的高级特性介绍(一)
  • LangChain Chat Model学习笔记
  • 项目生命周期 和 项目管理生命周期的差异
  • 嘉为科技 前端实习 面经(OC)
  • C/C++转换为字符串宏和字符串拼接宏的综合使用
  • 人工智能在医疗影像诊断中的应用与挑战
  • 第十四章:模板实例化_《C++ Templates》notes
  • 【数据结构】线段树算法介绍及模板代码
  • Java EE(15)——网络原理——TCP协议解析一
  • 精度与效率双突破!CASAIM 智能检测系统为制造装上“智慧之眼”
  • [特殊字符] 树莓派声卡驱动原理全解析:从模拟耳机口到HiFi DAC
  • 利用I2C_bus(I2C总线)为挂接在I2C总线上的设备AP3216C编写驱动程序
  • 大数据环境搭建
  • 利用 QOpenGLWidget 实现 GPU 加速视频帧绘制
  • 138. 随机链表的复制
  • 网络华为HCIA+HCIP IPv6
  • 【工具变量】中国各地级市是否属于“信息惠民国家试点城市”匹配数据(2010-2024年)