| [ Web Proxy ] |
| Viewing: https://raw.githubusercontent.com/ilyvsc/python-algorithms/master/algorithms/strings/add_binary.py | [Back] [Original] |
"""
Given two binary strings,
return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100".
"""
def add_binary(a, b):
s = ""
c, i, j = 0, len(a)-1, len(b)-1
zero = ord('0')
while (i >= 0 or j >= 0 or c == 1):
if (i >= 0):
c += ord(a[i]) - zero
i -= 1
if (j >= 0):
c += ord(b[j]) - zero
j -= 1
s = chr(c % 2 + zero) + s
c //= 2
return s
| Web Proxy Viewer | New URL | Original Page |