https://leetcode.com/problems/add-binary/
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
如果a b位数不等,则进行补“0”操作
public string AddBinary(string a, string b)
{
int n1 = a.Length,n2=b.Length;
int n = Math.Max(n1, n2);
if (n1 != n2)
{
if(n1>n2)
while (n2++!=n1)
b = "0" + b;
else
while (n1++ != n2)
a = "0" + a;
}
string str = "";
int carry = 0;
for (int i = n-1; i >= 0; i--)
{
if (a[i] == b[i])
{
str = carry + str;
carry = a[i]-'0';
}
else
{
str = (1 - carry) + str;
}
}
return carry == 1 ? 1 + str : str;
}