67. Add Binary
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
1 public class Solution { 2 public String addBinary(String a, String b) { 3 String res =""; 4 int l1=a.length()-1; 5 int l2=b.length()-1; 6 7 int carry=0; 8 for(int i=l1,j=l2;i>=0||j>=0;i--,j--){ 9 int sum=carry; 10 sum+=(i>=0)?(int)(a.charAt(i)-'0'):0; 11 sum+=(j>=0)?(int)(b.charAt(j)-'0'):0; 12 res =sum%2+res; 13 carry=sum/2; 14 15 } 16 if(carry!=0){ 17 res=carry+res; 18 } 19 return res; 20 } 21 }