问题描述:例三
一常规解法:
class Solution: def addBinary(self, a: str, b: str) -> str: i,j=len(a)-1,len(b)-1 add=0 answer='' while i>=0 or j>=0: x=int(a[i]) if i>=0 else 0 y=int(b[j]) if j>=0 else 0 sum=x+y+add answer=str(sum%2)+answer add=sum//2 i,j=i-1,j-1 if add>0:answer=str(add)+answer return answer
无非是把十进制改成二进制加法,换汤不换药
二:榴芒解法 Pythony一行代码搞定
class Solution: def addBinary(self, a: str, b: str) -> str: #bin(15)='0b1111'即把整数转化为二进制数 #int('1111',2) int('A',16) 即把字符串转化成对应进制数 return bin(int(a,2)+int(b,2))[2:]
我是小郑 期待与你一起奔赴山海!