Given two binary strings, return their sum (also a binary string).
Example
a = 11
b = 1
Return 100
public class Solution { /** * @param a a number * @param b a number * @return the result */ public String addBinary(String a, String b) { // Write your code here if(a.length() < b.length()){ String tmp = a; a = b; b = tmp; } int lengtha = a.length() - 1; int lengthb = b.length() - 1; int carry = 0; String str = ""; while(lengthb >=0){ int sum = (int) (a.charAt(lengtha) - '0') + (int) (b.charAt(lengthb) - '0') + carry; str = String.valueOf(sum%2) + str; carry = sum / 2; lengthb--; lengtha--; } while(lengtha>=0){ int sum = (int) (a.charAt(lengtha) - '0') + carry; str = String.valueOf(sum%2) + str; carry = sum / 2; lengtha--; } if(carry == 1){ str = '1' + str; } return str; } }