国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【算法】Add Two Numbers 兩數(shù)相加

這篇具有很好參考價值的文章主要介紹了【算法】Add Two Numbers 兩數(shù)相加。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Add Two Numbers 兩數(shù)相加

問題描述:

給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。

請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。

你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。

每個鏈表中的節(jié)點數(shù)在范圍 [ 1 , 100 ] 內(nèi) 0 < = N o d e . v a l < = 9 題目數(shù)據(jù)保證列表表示的數(shù)字不含前導(dǎo) 0 每個鏈表中的節(jié)點數(shù)在范圍 [1, 100] 內(nèi)\\ 0 <= Node.val <= 9\\ 題目數(shù)據(jù)保證列表表示的數(shù)字不含前導(dǎo)0 每個鏈表中的節(jié)點數(shù)在范圍[1,100]內(nèi)0<=Node.val<=9題目數(shù)據(jù)保證列表表示的數(shù)字不含前導(dǎo)0

分析

July 2的daily。比昨天的難度略高,這里的數(shù)值是以鏈表的形式給出。要求2個數(shù)進(jìn)行相加。

鏈表形式表達(dá)的數(shù)值,它的數(shù)值范圍就可以不受 l o n g long long的限制了。因為最終的結(jié)果也是鏈表

而對2個數(shù)進(jìn)行相加,一定是從低位開始,這些都是小學(xué)數(shù)學(xué)。

需要注意的是進(jìn)位,如果 s u m = x sum=x sum=x,那么留在當(dāng)前位的數(shù)值就應(yīng)該是 x m o d ?? 10 x \mod 10 xmod10,而進(jìn)位就交給 c a r r y = x / 10. carry = x/10. carry=x/10.

所以每次同一位置的數(shù)值相加,還要把carry計算進(jìn)去。
因為鏈表整體是從低到高的,所以每計算出一個位置,就要把它插入到之前的鏈表結(jié)尾,至于如何操作鏈表,就不說了。
c u r = a + b + c a r r y , c a r r y = 1 o r 0 cur = a+b+carry, carry =1 or 0 cur=a+b+carry,carry=1or0

代碼

public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        ListNode p1 = l1,p2 = l2,h = new ListNode(),p = h;
        int carry = 0,cur =0;
        while(p1!=null||p2!=null){
            cur =0;
            cur += carry;
            if(p1!=null){
                cur += p1.val;
                p1 = p1.next;    
            }
            if(p2!=null){
                cur += p2.val;
                p2 = p2.next;
            }
            int v = cur%10;
            carry = cur/10;
            ListNode node = new ListNode(v);
            p.next = node;
            p = p.next;
        }
        if(carry>0){
            p.next = new ListNode(1);
        }
        return h.next;
    }

時間復(fù)雜度 O ( N ) O(N) O(N)

空間復(fù)雜度 O ( 1 ) O(1) O(1)

遞歸方法的也可以做

Tag

Math
LinkedList

Recursion文章來源地址http://www.zghlxwxcb.cn/news/detail-515043.html

到了這里,關(guān)于【算法】Add Two Numbers 兩數(shù)相加的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • LeetCode 算法 2.兩數(shù)相加(python版)

    LeetCode 算法 2.兩數(shù)相加(python版)

    給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。 它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。 請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。 你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。

    2024年01月21日
    瀏覽(18)
  • 【算法】Two Sum II - Input Array Is Sorted 兩數(shù)之和 II - 輸入有序數(shù)組

    給你一個下標(biāo)從 1 開始的整數(shù)數(shù)組 numbers ,該數(shù)組已按 非遞減順序排列 ,請你從數(shù)組中找出滿足相加之和等于目標(biāo)數(shù) target 的兩個數(shù)。如果設(shè)這兩個數(shù)分別是 numbers[index1] 和 numbers[index2] ,則 1 = index1 index2 = numbers.length 。 以長度為 2 的整數(shù)數(shù)組 [index1, index2] 的形式返回這兩個

    2024年02月13日
    瀏覽(28)
  • LeetCode 1. Two Sum 兩數(shù)之和

    題目描述 給定一個整數(shù)數(shù)組 nums?和一個目標(biāo)值 target,請你在該數(shù)組中找出和為目標(biāo)值的那?兩個?整數(shù),并返回他們的數(shù)組下標(biāo)。 你可以假設(shè)每種輸入只會對應(yīng)一個答案。但是,數(shù)組中同一個元素不能使用兩遍。 示例: 給定 nums = [2, 7, 11, 15], target = 9 因為 nums[0] + nums[1] = 2

    2023年04月25日
    瀏覽(24)
  • LeetCode:2. 兩數(shù)相加

    LeetCode:2. 兩數(shù)相加

    給你兩個? 非空 ?的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照? 逆序 ?的方式存儲的,并且每個節(jié)點只能存儲? 一位 ?數(shù)字。 請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。 你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0?開頭。 2. 兩數(shù)相加 - 力扣(

    2024年02月09日
    瀏覽(17)
  • 兩數(shù)相加

    給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。 輸入:l1 = [2,4,3], l2 = [5,6,4] 輸出

    2024年02月12日
    瀏覽(20)
  • 2. 兩數(shù)相加

    2. 兩數(shù)相加

    給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。 請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。 你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。 示例 1: 示例 2: 示例 3: 提

    2024年02月15日
    瀏覽(19)
  • LeetCode——兩數(shù)相加

    LeetCode——兩數(shù)相加

    目錄 一、兩數(shù)相加 1、題目 2、題目解讀 3、代碼 二、反轉(zhuǎn)鏈表 1、題目 ?2、題目解讀 3、代碼? 三、兩數(shù)相加 II 1、題目 2、題目解讀 3、代碼 反轉(zhuǎn)鏈表再進(jìn)行計算 借助棧 2. 兩數(shù)相加 - 力扣(Leetcode) 給你兩個? 非空 ?的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照

    2024年02月12日
    瀏覽(22)
  • 【刷題】 leetcode 2 .兩數(shù)相加

    【刷題】 leetcode 2 .兩數(shù)相加

    我們來看看題目,,,, 往往困難的題只需要 簡單的敘述 。 好像只用找到兩個數(shù),整合成一個鏈表就可以。應(yīng)該 首先 我最快想到思路是 分別根據(jù)兩個鏈表求出對應(yīng)數(shù) 然后加一起 ,得到和 再把和拆分儲存到鏈表里 為此我們需要手撕一下鏈表頭插。 一頓操作猛如虎,一看

    2024年01月19日
    瀏覽(18)
  • 【每日一題】2. 兩數(shù)相加

    【每日一題】2. 兩數(shù)相加

    給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。 請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。 你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。 示例 1: 示例 2: 示例 3: 提

    2024年02月11日
    瀏覽(26)
  • 兩數(shù)相加 LeetCode熱題100

    給你兩個 非空 的鏈表,表示兩個非負(fù)的整數(shù)。它們每位數(shù)字都是按照 逆序 的方式存儲的,并且每個節(jié)點只能存儲 一位 數(shù)字。 請你將兩個數(shù)相加,并以相同形式返回一個表示和的鏈表。 你可以假設(shè)除了數(shù)字 0 之外,這兩個數(shù)都不會以 0 開頭。 建立鏈表l3,同時遍歷兩個鏈表

    2024年02月14日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包