zoukankan      html  css  js  c++  java
  • 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;
    };
    

      

    学而不思则罔,思而不结则殆,结而不看,一事无成
  • 相关阅读:
    学习路线
    环境搭建时用到的文档
    商城技术重点分析
    svn 忽略文件
    实用的css3 学习笔记
    转载 《AngularJS》5个实例详解Directive(指令)机制
    php 单例设计模式 example
    html5 图片转base64预览显示
    curl返回常见错误码
    jquery的end(),addBack()方法example
  • 原文地址:https://www.cnblogs.com/windseek/p/8624446.html
Copyright © 2011-2022 走看看