有兩個鍊錶表示兩個非負整數,每個鍊錶的開始位置是數字的最高位,且鍊錶每個節點只儲存一位數字,求兩個鍊錶表示整數的和,結果也用同樣的鍊錶表示。
例:鍊錶一 : 8->5->7->3->8 表示 85738
鍊錶二 : 5->7->3->5->4 表示 57354
返回結果鍊錶:1->4->3->0->9->2
要求
1、 用注釋寫清楚思路、變數;先在當前頁面書寫**,寫完後可以在本地工具進行除錯。(最後的**能run起來)
2、例出完整的測試用例。( 用例可以在main方法中使用注釋的方式列出 )
3、盡量使用時間和空間複雜度優的方法
4、語言不限。
這道題我沒有做過,現想的。
class
listnode
}public
class
solution
while
(l2!=null)
int sumoverten =
0,bit1 =
0, bit2 =
0, bitsum =0;
while
(!list1.
isempty()
&&!list2.
isempty()
)while
(!list1.
isempty()
)while
(!list2.
isempty()
)while
(!sum.
isempty()
)return res.next;
}public
static
void
main
(string[
] args)
// listnode l2 =new listnode(3);
// listnode temp2 = l2;
// for (int i = 4;i<8;i++)
//
//
listnode sum = sol.
sum(l1,l2)
;
滴滴筆試演算法題 兩個數字字串相加
題目釋義 給定兩個字串s1 s2,字串都是由0 9數字組成,需要將s1數字與s2數字進行相加,並返回相加後的資料結果s3。要求不能使用integer.parseint bigdecimal等操作,字元長度使用integer可能溢位。難度 簡單 測試用例1 s1 123 s2 234 計算結果s3 3...
演算法 兩個鍊錶生成相加鍊錶
題目描述 假設鍊錶中每乙個節點的值都在 0 9 之間,那麼鍊錶整體就可以代表乙個整數。給定兩個這種鍊錶,請生成代表兩個整數相加值的結果鍊錶。例如 鍊錶 1 為 9 3 7,鍊錶 2 為 6 3,最後生成新的結果鍊錶為 1 0 0 0。public listnode addinlist listnod...
刷題 兩個鍊錶生成相加鍊錶
兩個鍊錶,分別表示2個整數,每個鍊錶的節點含有數值0 9 比如9 3 7 和 6 3 相加,得到1 0 0 0 解 將2個鍊錶分別反向,將反向後的鍊錶相加,將得到的鍊錶反向,即可得到解 1 兩個單鏈表生成相加鍊錶 2public static node addlist node head1,node...