leetCode刷题(使用链表做加法)
时间:2022-06-01
本文章向大家介绍leetCode刷题(使用链表做加法),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
Explanation: 342 + 465 = 807.
关键是获取最后一个node节点
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} l1
* @param {ListNode} l2
* @return {ListNode}
*/
function listNode(val) {
this.val = val;
this.next = null;
}
var addTwoNumbers = function(l1, l2) {
var addp=l1,addn=l2,addpArr=[],addnArr=[],result;
while(addp){
addpArr.push(addp.val);
addp=addp.next;
}
while(addn){
addnArr.push(addn.val);
addn=addn.next;
}
debugger
var resultArr=[];
for(var j=0;j<Math.max(addpArr.length,addnArr.length);j++){
addpArr[j]=addpArr[j]||0;
addnArr[j]=addnArr[j]||0;
}
for(var i=0;i<Math.max(addpArr.length,addnArr.length);i++){
if(addpArr[i]+addnArr[i]>=10&&i==Math.max(addpArr.length,addnArr.length)-1){
addpArr[i+1]=0;
addnArr[i+1]=0;
}
if(addpArr[i]+addnArr[i]>=10){
addpArr[i+1]+=1;
resultArr.push(addpArr[i]+addnArr[i]-10);
}else{
resultArr.push(addpArr[i]+addnArr[i]);
}
}
// 我认为应该返回result才是对的,但是事实上返回resultArr才是对的
// var result=new listNode("");
// result.val=resultArr[0];
// result.next=lastNode;
// var lastNode;
// for(var i = 1;i<resultArr.length;i++){
// lastNode=getLastNode(result);
// lastNode.next={
// val:resultArr[i],
// next:null
// };
// }
// function getLastNode(list){
// while(list.next){
// list=list.next;
// }
// return list;
// }
return resultArr;
};
- 自然语言处理如何检查拼写错误?(Tensorflow实例教程、源代码)
- 仿qq登录界面
- 搭建Linux+Jexus+MariaDB+ASP.NET[LJMA]环境
- WindowsMobile/Win Form-界面自适应
- 搜索附近人和商铺功能
- 通过Mono 在 Heroku 上运行 .NET 应用
- 百度地图聚合
- LVS DR模式 RealServer 为 Windows 2008 R2配置
- android画图之贝塞尔曲线讲解
- 地图开发添加标注物
- lambda表达式-编译测试
- MongoDB 聚合管道(Aggregation Pipeline)
- 高仿今日头条
- Web打印组件jatoolsPrinter
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法