LeetCode 67. Add Binary 二进制求和

链接

https://leetcode-cn.com/problems/add-binary/description/

要求

给定两个二进制字符串,返回他们的和(用二进制表示)。
输入为非空字符串且只包含数字 1 和 0。

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

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

思路

转成10进制相加后再转成2进制

代码

执行用时:64 ms

class Solution:
    def addBinary(self, a, b):

        a_Decimal = 0
        b_Decimal = 0

        for j,k in enumerate(a[::-1]):
            a_Decimal += int(k) * (2 ** j)

        for j,k in enumerate(b[::-1]):
            b_Decimal += int(k) * (2 ** j)

        return bin(a_Decimal + b_Decimal)[2:]
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容