成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

2.兩數(shù)相加

Invoker / 2171人閱讀

摘要:題目描述給出兩個(gè)非空的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。您可以假設(shè)除了數(shù)字之外,這兩個(gè)數(shù)都不會(huì)以開(kāi)頭。回到本題把兩個(gè)鏈表之和存入一個(gè)數(shù)組,是進(jìn)位數(shù)如果有進(jìn)位,推入數(shù)組

題目描述:給出兩個(gè) 非空 的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自的位數(shù)是按照 逆序 的方式存儲(chǔ)的,并且它們的每個(gè)節(jié)點(diǎn)只能存儲(chǔ) 一位 數(shù)字。
如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。
您可以假設(shè)除了數(shù)字 0 之外,這兩個(gè)數(shù)都不會(huì)以 0 開(kāi)頭。
示例:
輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
輸出:7 -> 0 -> 8
原因:342 + 465 = 807

題外話: 在leetcode上Listnode構(gòu)造函數(shù)和測(cè)試用例的Listnode單鏈表都是生成好的,我們?cè)诒镜豱ode環(huán)境怎么生成自己的Listnode單鏈表呢,可以用如下方法.

       function ListNode(val) {
            this.val = val;
            this.next = null;
        }
        
        function getRe(i) {
            var listNode = new ListNode(c[i]);
            if (c[i + 1] || c[i + 1] === 0) {
                listNode.next = getRe(i + 1)
            }
            return listNode
        }
        var c = [1, 2, 3]
        
        var list1 = getRe(0)
        c = [4, 5, 6,7]
        var list2 = getRe(0)

這樣就生成了兩個(gè)Listnode單鏈表。

回到本題

/**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */
/**
 * @param {ListNode} l1
 * @param {ListNode} l2
 * @return {ListNode}
 */

var addTwoNumbers = function(l1, l2) {
    var v1, v2, sum;
    var cur1 = l1;
    var cur2 = l2;
    var j = 0;
    var c = [];
    //把兩個(gè)鏈表之和存入一個(gè)數(shù)組,j是進(jìn)位數(shù)
    while (cur1 != null || cur2 != null) {
        v1 = (cur1 != null) ? cur1.val : 0;
        v2 = (cur2 != null) ? cur2.val : 0;
        sum = v1 + v2 + j;
        j = parseInt(sum / 10);
        c.push(sum % 10);
        if (cur1 != null){
            cur1 = cur1.next;
        }
        if (cur2 != null){
            cur2 = cur2.next;
        }
    }
    //如果有進(jìn)位,推入數(shù)組
    if (j > 0) {
        c.push(j);
    }
    function getRe(i){
        var listNode = new ListNode(c[i]);
        if(c[i+1] || c[i+1] === 0) {
            listNode.next = getRe(i+1)
        }
        return listNode
    }
    return getRe(0);
};

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/100351.html

相關(guān)文章

  • 【前端來(lái)刷LeetCode】兩數(shù)之和與兩數(shù)相加

    摘要:給定表,存在函數(shù),對(duì)任意給定的關(guān)鍵字值,代入函數(shù)后若能得到包含該關(guān)鍵字的記錄在表中的地址,則稱表為哈希表,函數(shù)為哈希函數(shù)。而中的對(duì)象就是基于哈希表結(jié)構(gòu),所以我們構(gòu)造一個(gè)對(duì)象即可,是當(dāng)前遍歷到的值,是其與目標(biāo)值的差。 大部分玩前端的小伙伴,在算法上都相對(duì)要薄弱些,畢竟調(diào)樣式、調(diào)兼容就夠掉頭發(fā)的了,哪還有多余的頭發(fā)再去折騰。 確實(shí)在前端中需要使用到算法的地方是比較少,但若要往高級(jí)方向發(fā)展,...

    BLUE 評(píng)論0 收藏0
  • 【leetcode】2. 兩數(shù)相加

    摘要:給出兩個(gè)非空的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自的位數(shù)是按照逆序的方式存儲(chǔ)的,并且它們的每個(gè)節(jié)點(diǎn)只能存儲(chǔ)一位數(shù)字。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。您可以假設(shè)除了數(shù)字之外,這兩個(gè)數(shù)都不會(huì)以開(kāi)頭。 給出兩個(gè)?非空 的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自的位數(shù)是按照?逆序?的方式存儲(chǔ)的,并且它們的每個(gè)節(jié)點(diǎn)只能存儲(chǔ)?一位?數(shù)字。 如果,我們將這兩...

    dack 評(píng)論0 收藏0
  • LeetCode.2 兩數(shù)相加(Add Two Numbers)(JS)

    摘要:更新之前說(shuō)感覺(jué)優(yōu)秀答案的最后三行可以用尾遞歸優(yōu)化不知道尾遞歸的小伙伴可以點(diǎn)這里,仔細(xì)想了一下,并不能。尾遞歸的實(shí)現(xiàn),往往需要改寫遞歸函數(shù),確保最后一步只調(diào)用自身。 上周日就想寫vue.nextTick的源碼分析,可是總是不知道從哪兒下手,今天有時(shí)間,先把leetcode第二題補(bǔ)了,感覺(jué)這道題還挺簡(jiǎn)單的 一、題目 兩數(shù)相加: 給出兩個(gè) 非空 的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自...

    Binguner 評(píng)論0 收藏0
  • LeetCode 2兩數(shù)相加 Add Two Numbers

    摘要:給出兩個(gè)非空的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。需要考慮到兩個(gè)鏈表長(zhǎng)度不同時(shí)遍歷方式鏈表遍歷完成時(shí)最后一位是否需要進(jìn)一位。 ?給出兩個(gè) 非空 的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自的位數(shù)是按照 逆序 的方式存儲(chǔ)的,并且它們的每個(gè)節(jié)點(diǎn)只能存儲(chǔ) 一位 數(shù)字。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。 ...

    diabloneo 評(píng)論0 收藏0
  • LeetCode 2兩數(shù)相加 Add Two Numbers

    摘要:給出兩個(gè)非空的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。需要考慮到兩個(gè)鏈表長(zhǎng)度不同時(shí)遍歷方式鏈表遍歷完成時(shí)最后一位是否需要進(jìn)一位。 ?給出兩個(gè) 非空 的鏈表用來(lái)表示兩個(gè)非負(fù)的整數(shù)。其中,它們各自的位數(shù)是按照 逆序 的方式存儲(chǔ)的,并且它們的每個(gè)節(jié)點(diǎn)只能存儲(chǔ) 一位 數(shù)字。如果,我們將這兩個(gè)數(shù)相加起來(lái),則會(huì)返回一個(gè)新的鏈表來(lái)表示它們的和。 ...

    Towers 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<