-
Notifications
You must be signed in to change notification settings - Fork 0
67. Add Binary
Jacky Zhang edited this page Nov 2, 2016
·
2 revisions
Given two binary strings, return their sum (also a binary string).
For example, a = "11" b = "1" Return "100".
String类题目。
可以转换为两个数字相加,从末尾的数字算起。
public class Solution {
public String addBinary(String a, String b) {
StringBuilder sb = new StringBuilder();
int aLen = a.length();
int bLen = b.length();
int i = 0;
int carry = 0;
while(i < aLen || i < bLen) {
int aNum = i < aLen ? a.charAt(aLen-1-i)-'0' : 0;
int bNum = i < bLen ? b.charAt(bLen-1-i)-'0' : 0;
int temp = aNum + bNum + carry;
sb.append((char)('0'+temp%2));
carry = temp / 2;
i++;
}
if(carry == 1) sb.append('1');
return sb.reverse().toString();
}
}