您的位置:首页 > 其它

[leetcode] Add Binary

2013-08-12 20:06 274 查看
Given two binary strings, return their sum (also a binary string).

For example,

a = 
"11"


b = 
"1"


Return 
"100"
.

class Solution {
public:
string addBinary(string a, string b) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
int length1=a.size();
int length2=b.size();
if(length2<length1){//keep b is longer
string temp=a;
a=b;
b=temp;
int c=length1;
length1=length2;
length2=c;
}
a.insert(0,length2-length1,'0');
char buffer[]={'0','1'};
int jin,yu;
jin=0;yu=0;
for(int i=length2-1 ; i>=0 ; i--){
yu=((a[i]-'0')+(b[i]-'0')+jin)%2;
jin=((a[i]-'0')+(b[i]-'0')+jin)/2;
b[i]=buffer[yu];
}
if(jin)
b.insert(0,1,'1');
return b;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: