[leetcode] 67. Add Binary 解题报告

Given two binary strings, return their sum (also a binary string).

For example,
a = "11"
b = "1"
Return "100".

判断数字时用charAt(i)-'0'即可

public String addBinary(String a, String b) {
        StringBuilder sb = new StringBuilder();
        int i=a.length()-1,j=b.length()-1,carry=0;
        while (i>=0 || j>=0){
            int sum = carry;
            if (i>=0) sum+=a.charAt(i--)-'0';
            if (j>=0) sum+=b.charAt(j--)-'0';
            sb.insert(0,sum%2);
            carry=sum/2;
        }
        if (carry!=0) sb.insert(0,carry);
        return sb.toString();
    }
原文地址:https://www.cnblogs.com/pulusite/p/7598996.html