您的位置:首页 > 其它

67. Add Binary#1(Done)

2016-12-02 17:29 274 查看
Solution

public class Solution {
public String addBinary(String a, String b) {
if (a.length() > b.length()) {
String tmp = a;
a = b;
b = tmp;
}
int s = a.length() - 1;
int l = b.length() - 1;
int carry = 0;
String res = "";
while (s >= 0) {
int sum = (int)(a.charAt(s--) - '0') + (int)(b.charAt(l--) - '0') + carry;
carry = sum / 2;
res = String.valueOf(sum % 2) + res;
}
while (l >= 0) {
int sum = (int)(b.charAt(l--) - '0') + carry;
carry = sum / 2;
res = String.valueOf(sum % 2) + res;
if (carry == 0) {
return b.substring(0, l + 1) + res;
}
}
if (carry == 1) {
res = "1" + res;
}
return res;
}
}


Problem#1

* 效率太低

* 代码结构比较复杂
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  String