面試題 02 05 鍊錶求和

2021-10-09 19:08:11 字數 731 閱讀 6280

給定兩個用鍊錶表示的整數,每個節點包含乙個數字。

這些數字是反向存放的,也就是個位排在鍊錶首部。

編寫函式對這兩個整數求和,並用鍊錶形式返回結果。

示例:

1.先對應位求和(位數少的數對應位不存在就用0加)

2.加上上一次的進製

3.得到當前位

4.記錄進製

當位數大的數遍歷完(遍歷完較長的鍊錶)且進製也為0的時候就可以停止了

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

if(p2 !=

null

) sum +

= carry;

listnode* node =

newlistnode

(sum %10)

; carry = sum /10;

p->next = node;

p = p-

>next;

}return head-

>next;}}

;

時間複雜度:o(n)

空間複雜度:o(1)

面試題 02 05 鍊錶求和

給定兩個用鍊錶表示的整數,每個節點包含乙個數字。這些數字是反向存放的,也就是個位排在鍊錶首部。編寫函式對這兩個整數求和,並用鍊錶形式返回結果。示例 輸入 7 1 6 5 9 2 即617 295 輸出 2 1 9,即912 definition for singly linked list.stru...

面試題 02 05 鍊錶求和

給定兩個用鍊錶表示的整數,每個節點包含乙個數字。這些數字是反向存放的,也就是個位排在鍊錶首部。編寫函式對這兩個整數求和,並用鍊錶形式返回結果。示例 輸入 7 1 6 5 9 2 即617 295 輸出 2 1 9,即912 高階 思考一下,假設這些數字是正向存放的,又該如何解決呢?示例 輸入 6 1...

面試題 02 05 鍊錶求和

給定兩個用鍊錶表示的整數,每個節點包含乙個數字。這些數字是反向存放的,也就是個位排在鍊錶首部。編寫函式對這兩個整數求和,並用鍊錶形式返回結果。輸入 7 1 6 5 9 2 即617 295 輸出 2 1 9,即912 class solution if l2 listnode node new li...