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

day15 leetcode-hot100-28(链表7)

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

 

1.模拟

思路

最核心的一点就是将两个链表模拟为等长,不足的假设为0;

(1)设置一个新链表newl来代表相加结果。

(2)链表1与链表2相加,具体方式为sum=n1+n2+jin(进位),该位置的值为sum%10,jin=sum/10.

(3)判断两个链表的下一个节点是否为空,不为空就向下继续走。

(4)最后如果进位不为0,则需要再增加一个节点,节点值为jin(进位值)

具体代码
/*** 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 init;ListNode newl=new ListNode(-1);init=newl;int jin=0;int sum=0;while(l1!=null || l2!=null){int n1 = l1!=null ? l1.val:0;int n2 = l2!=null ? l2.val:0;sum = (jin+n1+n2)%10;jin = (jin+n1+n2)/10;newl.next=new ListNode(sum);newl=newl.next;if(l1!=null){l1=l1.next;}if(l2!=null){l2=l2.next;}}if(jin>0){newl.next=new ListNode(jin);}return init.next;}
}

 

http://www.lryc.cn/news/2395139.html

相关文章:

  • 阿里云云效对接SDK获取流水线制品
  • Qt 相关 编译流程及交叉编译 部署所遇到的问题总结-持续更新
  • 前端面经 DNSxieyi1
  • 如何通过ES实现SQL风格的查询?
  • ​​知识图谱:重构认知的智能革命​
  • 【计算机网络】4网络层①
  • MATLAB中的table数据类型:高效数据管理的利器
  • Dropout 在大语言模型中的应用:以 GPT 和 BERT 为例
  • CentOS 7 如何安装libsndfile?
  • 基于深度学习的语音识别系统设计与实现
  • gitLab 切换中文模式
  • 133.在 Vue3 中使用 OpenLayers 实现画多边形、任意编辑、遮罩与剪切处理功能
  • 4.8.4 利用Spark SQL实现分组排行榜
  • 40. 自动化异步测试开发之编写异步业务函数、测试函数和测试类(类写法)
  • 【五子棋在线对战】一.前置知识的了解
  • 历年中国科学技术大学计算机保研上机真题
  • 内联盒模型基本概念?——前端面试中的隐形考点剖析
  • HackMyVM-Art
  • 网页前端开发(基础进阶1)
  • const ‘不可变’到底是值不变还是地址不变
  • 如何找到一条适合自己企业的发展之路?
  • Vue-数据监听
  • 当前用户的Git全局配置情况:git config --global --list
  • AI生态警报:MCP协议风险与应对指南(中)——MCP Server运行时安全​​
  • day15 leetcode-hot100-29(链表8)
  • DeepSeek 赋能文化遗产数字化修复:AI 重构千年文明密码
  • MonitorSDK_性能监控(从Web Vital性能指标、PerformanceObserver API和具体代码实现)
  • Spring Boot整合JWT实现认证与授权
  • 在 Linux 系统上连接 GitHub 的方法 (适用2025年)
  • 解决matlab两个库文件名冲突的问题