leetCode刷题(使用链表做加法)
生活随笔
收集整理的這篇文章主要介紹了
leetCode刷题(使用链表做加法)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
Explanation: 342 + 465 = 807.
關(guān)鍵是獲取最后一個(gè)node節(jié)點(diǎn) /*** 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;}debuggervar 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]);}} // 我認(rèn)為應(yīng)該返回result才是對(duì)的,但是事實(shí)上返回resultArr才是對(duì)的 // 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; };
關(guān)鍵是獲取最后一個(gè)node節(jié)點(diǎn) /*** 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;}debuggervar 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]);}} // 我認(rèn)為應(yīng)該返回result才是對(duì)的,但是事實(shí)上返回resultArr才是對(duì)的 // 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; };
轉(zhuǎn)載于:https://www.cnblogs.com/windseek/p/8624446.html
總結(jié)
以上是生活随笔為你收集整理的leetCode刷题(使用链表做加法)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1台路由连接两个网络-一台路由器有两个网
- 下一篇: 记录node内存瓶颈分析