LeetCode 二進位制求和

2021-10-06 01:18:02 字數 924 閱讀 3413

二進位制求和(簡單)

2023年4月28日

給你兩個二進位制字串,返回它們的和(用二進位制表示)。

輸入為 非空 字串且只包含數字 1 和 0。

示例 1:

輸入: a = 「11」, b = 「1」

輸出: 「100」

示例 2:

輸入: a = 「1010」, b = 「1011」

輸出: 「10101」

每個字串僅由字元 『0』 或 『1』 組成。

1 <= a.length, b.length <= 10^4

字串如果不是 「0」 ,就都不含前導零。

**實現

利用integer的方法進行進製的轉換,自己想當然的做法,實際過不了,資料過大的時候跑不了

class

solution

}

大佬的思路:將兩個字串較短的用 0 補齊,使得兩個字串長度一致,然後從末尾進行遍歷計算,得到最終結果。

stringbuilder ans =

newstringbuilder()

;int ca =0;

// 是否進一位

for(

int i = a.

length()

-1, j = b.

length()

-1; i >=

0|| j >=

0; i--

, j--

) ans.

(ca ==

1? ca :"")

;// 判斷最後一次計算是否有進製 有則在最前面加上1 否則原樣輸出

return ans.

reverse()

.tostring()

;

二進位制求和 LeetCode

從後向前遍歷每乙個字串的每乙個字元,直到走完所有位,比如兩個字串分別是a 101 和 b 11 則第一次取a的最後一位1和b的最後一位1,初始沒有進製,則進製為0,相加為2,變為0,進一位,總結起來就是 每個字串各取一位相加,然後再加上進製 如果有為1,沒有為0 得到的值設為x,x 2即為新的進製,...

leetCode 二進位制求和

題目描述 給你兩個二進位制字串,返回它們的和 用二進位制表示 輸入為空字串且只包含數字1和0。示例 1 輸入 a 11 b 1 輸出 100 示例 2 輸入 a 1010 b 1011 輸出 10101 每個字串僅由字元 0 或 1 組成。1 a.length,b.length 10 4 字串如果不...

Leetcode 二進位制求和 簡單

給定兩個二進位制字串,返回他們的和 用二進位制表示 輸入為非空字串且只包含數字 1 和 0。示例 1 輸入 a 11 b 1 輸出 100 示例 2 輸入 a 1010 b 1011 輸出 10101 比較直觀,先把兩個字串補到一樣長,然後模擬進製即可.string方法 s.length 獲取長度 ...