Leetcode 兩數求和

2021-09-27 12:47:00 字數 661 閱讀 8408

題目描述:

給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。

如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。

您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。

輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)

輸出:7 -> 0 -> 8

原因:342 + 465 = 807

思路:我們可以利用兩個單鏈表的空間,來最小化空間開銷。以l1單鏈表為計算結果儲存的位置,然後按位計算的值,覆蓋l1單鏈表當前結點處的值;如果l1單鏈表當前的結點為空,則將當前結點鏈結到l2單鏈表的當前結點;存在特殊情況,就是l1、l2

同時為空,並且存在進製,那麼由於p2=pre=null,因此我們需要重新申請乙個空間用來儲存新的結點。

struct listnode* addtwonumbers(struct listnode* l1, struct listnode* l2)

if(p1==null&&p2==null&&flag==1)

return start;

}

leetcode 167 兩數求和

方法二.二分查詢 給定乙個已按照 公升序排列 的整數陣列 numbers 請你從陣列中找出兩個數滿足相加之和等於目標數 target 函式應該以長度為 2 的整數陣列的形式返回這兩個數的下標值。numbers 的下標 從 1 開始計數 所以答案陣列應當滿足 1 answer 0 answer 1 n...

leetcode 第二題 兩數求和

題目 我的第一種解法 企圖 寫乙個把鍊錶中的值轉換成 整型的方法,再寫乙個把整型轉換成鍊錶形式的方法,以此得到結果返回 includeusing namespace std struct listnode class solution long getnum listnode l return su...

Leetcode刷題兩數求和(簡單)

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。我的思路挺簡單的,兩個for迴圈。第一次在這個 刷題,除了和ccf題輸入輸出有些不同,感覺有點彆扭外,感...