@@ -0,0 +1,945 @@
+package misc.math.lc067_addbinary;%0A%0A/**%0A * Given two binary strings, return their sum (also a binary string).%0A * For example, a = %2211%22, b = %221%22. Return %22100%22.%0A */%0Apublic class Solution %7B%0A%0A    public String addBinary(String a, String b) %7B%0A        if (a.length() == 0 %7C%7C b.length() == 0) %7B%0A            return %220%22;%0A        %7D%0A%0A        StringBuilder ret = new StringBuilder();%0A        int carry = 0;%0A        for (int i = a.length()-1, j = b.length()-1; (i %3E= 0 %7C%7C j %3E= 0); i--, j--) %7B%0A            int d1 = (i %3C 0) ? 0 : (a.charAt(i) - '0');%0A            int d2 = (j %3C 0) ? 0 : (b.charAt(j) - '0');%0A            int sum = d1 + d2 + carry;%0A            if (sum %3E= 2) %7B%0A                ret.insert(0, sum %25 2);%0A                carry = 1;%0A            %7D else %7B%0A                ret.insert(0, sum);%0A                carry = 0;%0A            %7D%0A        %7D%0A%0A        if (carry == 1) %7B%0A            ret.insert(0, carry);%0A        %7D%0A        return ret.toString();%0A    %7D%0A%0A%7D%0A

leetcode-067 add binary