二進制求和

給定兩個二進制字符串,返回他們的和(用二進制表示)。

輸入爲非空字符串且只包含數字 1 和 0

示例 1:

輸入: a = "11", b = "1"
輸出: "100"

示例 2:

輸入: a = "1010", b = "1011"
輸出: "10101"

思路:

直接將二進制字符串轉化成十進制,相加後,再將結果轉化成二進制

class Solution:
    def addBinary(self, a, b):
        """
        :type a: str
        :type b: str
        :rtype: str
        """
        return bin(int(a,2)+int(b,2))[2:]
        
        

知識點複習:

int(x, [base])

作用:

將一個數字或base類型的字符串轉換成整數。

int(x=0)

int(x, base=10),base缺省值爲10,也就是說不指定base的值時,函數將x按十進制處理。

注:

1. x 可以是數字或字符串,但是base被賦值後 x 只能是字符串

2. x 作爲字符串時必須是 base 類型,也就是說 x 變成數字時必須能用 base 進製表示

進制轉化:

int() => 將其他進制轉化成十進制

bin() => 將其他進制轉化成二進制

oct() => 將其他進制轉化成八進制

hex() => 將其他進制轉化成十六進制

注意:

bin(),oct(),hex()返回值均爲字符串而且會帶有0b,0o,0x前綴

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章