給定兩個二進位制字串,返回他們的和(用二進位制表示)。
輸入為非空字串且只包含數字1
和0
。
示例 1:
輸入:a = "11", b = "1"輸出:"100"示例 2:
輸入:a = "1010", b = "1011"輸出:"10101"新鮮現做 幸福coding
class solution(object):
def addbinary(self, a, b):
""":type a: str
:type b: str
:rtype: str
"""a_index = len(a) - 1
b_index = len(b) - 1
res_arr =
jinwei = 0
while a_index >= 0 or b_index >= 0:
_sum = jinwei
if a_index >= 0:
_sum += int(a[a_index])
a_index -=1
if b_index >= 0:
_sum += int(b[b_index])
b_index -=1
jinwei = _sum/2
if jinwei:
res_arr.reverse()
res_arr = map(str, res_arr)
return ''.join(res_arr)
小結:參考10進製加法。注意最後一次迴圈後 沒有加入進製結果。
時間複雜度 o(n)
Leetcode 67 二進位制求和
給定兩個二進位制字串,返回他們的和 用二進位制表示 輸入為非空字串且只包含數字 1 和 0。示例 1 輸入 a 11 b 1 輸出 100 示例 2 輸入 a 1010 b 1011 輸出 10101 class solution if blen 0 carry sum 2 錯誤的 if sum 2...
leetcode 67 二進位制求和
給定兩個二進位制字串,返回他們的和 用二進位制表示 輸入為非空字串且只包含數字 1 和 0。示例1 輸入 a 11 b 1 輸出 100 示例2 輸入 a 1010 b 1011 輸出 10101 解題思路 老老實實的採用了較為暴力的列舉法來作答,所以 較為複雜,且可讀性較差 class solut...
LeetCode67 二進位制求和
1.題目描述 給定兩個二進位制字串,返回他們的和 用二進位制表示 輸入為非空字串且只包含數字 1 和 0。示例 1 輸入 a 11 b 1 輸出 100 示例 2 輸入 a 1010 b 1011 輸出 10101 2.解法 解法一 class solution def addbinary self...