class Solution {
public:
string addBinary(string a, string b) {
if(a.length() < b.length())
swap(a,b);
int i = a.length()-1,j=b.length()-1;
for(;j>=0;i--,j--){
a[i] = a[i]+b[j]-'0';
if(i > 0 && a[i] >= '2'){
a[i] -= 2;
a[i-1] += 1;
}
}
while(i>0){
if(a[i] > '1'){
a[i]-=2;
a[i-1]+=1;
}
i--;
}
if(a[0] > '1'){
a[0] -= 2;
a = '1'+a;
}
return a;
}
};leetcode 67. Add Binary
最新推荐文章于 2025-12-16 20:41:18 发布
本文介绍了一种在C++中实现两个二进制字符串相加的方法。通过将较短的字符串与较长的字符串对齐,并从最低位开始逐位相加,遇到进位则继续向前一位进位。最终得到的字符串即为两个二进制数相加的结果。
2万+

被折叠的 条评论
为什么被折叠?



