本文正在参与掘金团队号上线活动,点击 查看大厂春招职位
一、题目描述
给你两个二进制字符串,返回它们的和(用二进制表示)。
输入为非空字符串且只包含数字1和0。
示例 1 :
输入: a = "11", b = "1"
输出: "100"
示例 2 :
输入: a = "1010", b = "1011"
输出: "10101"
二、思路分析
- 将
二进制数转换为十进制数。 - 进行十进制数的
加法运算。 - 将十进制数加法运算的和
转换为二进制数返回。
三、AC 代码
class Solution:
def addBinary(self, a: str, b: str) -> str:
ta = int(a, 2)
tb = int(b, 2)
tsum = ta + tb
return "{0:b}".format(tsum)
输出为:
四、总结
该题是一道进制重复转换题,二进制的加减法运算可以先转换为十进制运算,进行运算后再将十进制运算结果转换为二进制数进行输出。