67. Add Binary

Total Accepted: 75848
Total Submissions: 283546
Difficulty: Easy

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

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

Java:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Solution {
    public String addBinary(String a, String b) {
        StringBuilder sb = new StringBuilder();
        int carry = 0, i = a.length(), j = b.length();
        while (i > 0 || j > 0 || carry == 1) {
            if (i > 0)
                carry += a.charAt(--i) - '0';
            if (j > 0)
                carry += b.charAt(--j) - '0';
            sb.append((char) ((carry % 2) + '0'));
            carry >>>= 1;
        }
        return sb.reverse().toString();
    }
}

打个小广告

欢迎加入我的小专栏「基你太美」一起学习。