javasript两个数组元素分别相加
发表于:2021-08-23 09:36:27浏览:2542次
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

示例 1:
输入:l1 = [2,4,3], l2 = [5,6,4] 输出:[7,0,8] 解释:342 + 465 = 807
示例2:
输入:l1 = [0], l2 = [0] 输出:[0] 解释:0 + 0= 0
示例3:
输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9] 输出:[8,9,9,9,0,0,0,1] 解释:9999999 + 9999= 89990001
解法:
function sum(a,b,c){
let d=a+b+c;
if(d>9){
let e=d%10;
return [1,e];
}
else{
return [d];
}
}
function add(len1,len2){
let i=0,j=0,sumArray = [],addOne=0;
if(len1.length<len2.length){
i=len1;
j=len2;
}else{
i=len2;
j=len1;
}
for(let m=0;m<j.length;m++){
let a=0;
let b=j[m];
if(m<i.length){
a=i[m];
}
let k=sum(a,b,addOne);
if(k.length>1){
addOne=1;
sumArray.push(k[1]);
}
else{
sumK=0;
sumArray.push(k[0]);
}
if(m==j.length-1 && addOne==1){
sumArray.push(1);
}
}
console.log(sumArray);
}
//add([2,4,3],[5,6,4]);//[7,0,8]
//add([0],[0]);//[0]
add([9,9,9,9,9,9,9],[9,9,9,9]);//[89990001]推荐文章
- 阿里云ECS云服务器CentOS7云盘在线扩容操作
- 前端程序员后期的发展可以去干什么?
- 移动端微信、企业微信中使用H5的input file时只能选择手机的图片,不能选择文档文件的解决方案
- 82个常规的前端JavaScript方法封装(31~40)
- 微信浏览器或手机浏览器字体大小调整 导致H5页面布局错乱解决方案
- 又一轻量级的开源Linux服务器管理面板mdserver-web推荐
- 微信推出输入法,打个字竟然需要508MB内存?说好的小而美呐?
- PHP快速查找value所在数组的索引值
- CSS 选择器::is(), :where(), 和:has()伪元素的运用
- php使用phpword的TemplateProcessor方式实现在word模板中动态插入表格

