javasript两个数组元素分别相加
发表于:2021-08-23 09:36:27浏览:3077次
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
你可以假设除了数字 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]推荐文章
- 推荐收藏7个开源且实用的CSS 框架 / 组件
- 谷歌Chrome浏览器v101稳定版发布 支持FedCM和优先级提示等新功能
- 前端开发简单吗?一套前端的知识体系带你了解前端岗位
- CRM的基本功能模块是什么?如何判断企业是否需要CRM系统?
- 前端:javascript浅拷贝与深拷贝的区别
- phpstudy如何切换设置不同的composer版本及PHP版本
- aliplayer播放器,TcPlayer播放器,xgplayer播放器三款大厂的视频直播播放器对比
- PHP中mysqli_select_db与mysqli_query函数的用法举例
- PHP中的public,static,private,protected,final,const,abstract解析与区别
- HTTP中GET、POST、PUT与DELETE的区别和用法

