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

leetcode 两数相加 java

一开始没看懂题目,没明白逆序是啥意思,原来就是从右向左看链表。

返回链表的时候,只需要返回链表的头节点即可,即返回了整个链表。

算法和代码都可以参考这篇博客,只不过这个是c++版本的
https://xas-sunny.blog.csdn.net/article/details/140059170

/*** 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 pre = new ListNode(-1);//指向上述哨兵位节点,作为当前节点ListNode cur = pre;//定义一个可移动的指针,用来指向存储两个数之和的位置int rise = 0;while(l1!=null || l2 !=null){int x = l1==null ? 0 : l1.val;int y = l2==null ? 0 : l2.val;int sum = x+y+rise;rise = sum/10;sum=sum%10;//rise=sum/10;//将求和数赋值给新链表的节点,//注意这个时候不能直接将sum赋值给cur.next = sum。这时候会报,类型不匹配。//所以这个时候要创一个新的节点,将值赋予节点cur.next = new ListNode(sum);cur = cur.next;if(l1!=null){l1=l1.next;}if(l2!=null){l2=l2.next;}//如果有进位,那么将进位数,赋予链表的新节点if(rise==1){cur.next = new ListNode(rise);}}return pre.next;}
}
http://www.xdnf.cn/news/8616.html

相关文章:

  • 51页 @《人工智能生命体 新启点》中國龍 原创连载
  • redis的AOF恢复数据
  • CMake基础:CMakeLists.txt 文件结构和语法
  • github公开项目爬取
  • SMT贴片机操作核心步骤精要
  • 在kali中搞个jdk1.8.,又不破坏环境
  • Python猜拳“小”游戏
  • 动态IP:像变色龙一样自由切换网络身份
  • 【编程语言】【C语言】一篇文件构建C语言知识体系
  • 神经算子与FNO技术详解
  • 几种环境下的Postgres数据库安装
  • docker commit除了提交容器成镜像,还能搞什么之修改cmd命令
  • 全面指南:使用Node.js和Python连接与操作MongoDB
  • 汉字不仅是一种语言 还是当作艺术形式来展现
  • 基于Springboot + vue3实现的中国戏曲文化传播系统
  • Linux环境变量与地址空间
  • 冰箱热交换的原理以及如何加氟
  • 超越OpenAI CodeX的软件工程智能体:Jules
  • Axure元件动作六:设置图片
  • 高分辨率北半球多年冻土数据集(2000-2016)
  • 科学计算中的深度学习模型精解:CNN、U-Net 和 Diffusion Models
  • 【KWDB 创作者计划】KWDB单机性能测试:从零开始的详细教程
  • 前端项目部署 打包上线
  • 人脸美颜磨皮祛痘1:数据集说明(含下载链接)
  • LangGraph:人工干预与自动化结合
  • 使用workvisual对库卡机器人进行程序备份
  • 86. Java 数字和字符串 - 数字
  • Doris ClickHouse Greenplum 对比
  • 6.3.2图的深度优先遍历
  • 跨模态行人检索方法综述(上)