您的位置:首页 > 其它

[LeetCode]—Add Binary 两个字符串二进制相加

2014-07-02 20:28 399 查看


Add Binary

Given two binary strings, return their sum (also a binary string).

For example,

a =
"11"


b =
"1"


Return
"100"
.
思路简单,代码要写的简洁高效才好。

#include<iostream>
#include<string>
#include<sstream>
#include<algorithm>

using namespace std;

class Solution {
public:
string addBinary(string a, string b) {
int len_a=a.length();
int len_b=b.length();
int carry=0,temp;
string res="";

int len=max(len_a,len_b);
for(int i=0;i<len;i++){
int p=(i<len_a)?a[len_a-1-i]-'0':0;
int q=(i<len_b)?b[len_b-1-i]-'0':0;

temp=p+q+carry;
carry=temp/2;
res.insert(res.begin(),temp%2+'0');
}

return (carry==0)?res:"1"+res;
}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: