筆試演算法題 把兩個鍊錶的數字相加,然後存進乙個鍊錶

2021-10-21 02:23:44 字數 1106 閱讀 3336

有兩個鍊錶表示兩個非負整數,每個鍊錶的開始位置是數字的最高位,且鍊錶每個節點只儲存一位數字,求兩個鍊錶表示整數的和,結果也用同樣的鍊錶表示。

例:鍊錶一 : 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...