题解 | #牛群的编码#
牛群的编码
https://www.nowcoder.com/practice/fd18eec140244f31ac817757a54b4a39
考察知识点:进制之间的转换以及计算
注意:返回是字符串类型的数字
题目分析:
先将二进制转换为十进制去计算两数之和,再将十进制转为二进制
十进制转二进制采用"除2取余,逆序排列"法
采用的编程语言:Python
完整的编码代码:如下所示
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param a string字符串 # @param b string字符串 # @return string字符串 # class Solution: def addBinary(self , a: str, b: str) -> str: #二进制转十进制 def BtoD(data:str): sum=0 j=0 for i in data[::-1]: sum=sum+(int(i)*(2**j)) j=j+1 return sum #十进制转二进制 def DtoB(data:int): if data==0: return 0 else: return data%2+10*DtoB(data//2) add=BtoD(a)+BtoD(b) result=str(DtoB(add)) return result
面试高频TOP202解析 文章被收录于专栏
采用Java,C,Python等方法去解答面试高频TOP202题目,