67. Add Binary
来源:互联网 发布:怎么把照片上传到淘宝 编辑:程序博客网 时间:2024/06/11 15:37
For example,
a = "11"
b = "1"
Return "100".
设置一个·carry位,如果两个数按位相加和大于等于2则carry位等于1
class Solution
{
public:
string addBinary(string a, string b)
{
int lena=a.size();
int lenb=b.size();
if(lena==0)
return b;
if(lenb==0)
return a;
int k=lena>lenb?lena-1:lenb-1;
string result=lena>lenb?a:b;
int carry(0);
int ia=lena-1;
int ib=lenb-1;
while(ia>=0&&ib>=0)
{
int temp;
temp=(a[ia] - '0') + (b[ib] - '0') + carry;
if(temp>=2)
{
temp=temp-2;
carry=1;
}
else
{
carry=0;
}
result[k]=temp+'0';
ia--;
ib--;
k--;
}
while(ia>=0)
{
int temp;
temp=a[ia]-'0'+carry;
if(temp>=2)
{
temp=temp-2;
carry=1;
}
else
{
carry=0;
}
result[k]=temp+'0';
ia--;
k--;
}
while(ib>=0)
{
int temp;
temp=a[ib]-'0'+carry;
if(temp>=2)
{
temp=temp-2;
carry=1;
}
else
{
carry=0;
}
result[k]=temp+'0';
ib--;
k--;
}
if(carry==1)
result='1'+result;
else
return result;
}
}l;
- [LeetCode]67.Add Binary
- LeetCode --- 67. Add Binary
- [Leetcode] 67. Add Binary
- [leetcode] 67.Add Binary
- 67. Add Binary
- 【leetcode】67. Add Binary
- 67. Add Binary
- [leetcode] 67.Add Binary
- [leetcode] 67. Add Binary
- 67. Add Binary
- 67. Add Binary
- 【Leetcode】67. Add Binary
- 67. Add Binary
- 67. Add Binary LeetCode
- 67. Add Binary
- 【LeetCode】67. Add Binary
- 67. Add Binary
- 67. Add Binary
- HTML标签简写及全称大全
- source insight的自动补全功能问题
- 快速切换jdk1.6、jdk1.7与jdk1.8的bat
- tomcat配置数据源
- window下elasticsearch安装以及ik插件使用
- 67. Add Binary
- springMVC 国际化 多语言
- 揭穿病毒和木马的隐藏手段
- tensorflow构建项目流程(8)---《深度学习》
- Faster-RCNN_TF代码解读9:proposal_target_layer_tf.py
- JVM 垃圾对象的判定
- java---Collections
- Android Studio Gradle 构建项目下载依赖包慢的解决方式
- 代写征文怎么写