概述
【题目】
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
【解析】
字符串类型的二进制加法,从后往前加,再设置一个进位就ok了。
【代码】
public String addBinary(String a, String b) {
StringBuilder res = new StringBuilder("");
int m = a.length();
int n = b.length();
int flag = 0;
int i=m-1,j=n-1;
while(i>=0||j>=0||flag>0){
if(i>=0) flag=a.charAt(i)-'0'+flag;
if(j>=0) flag=b.charAt(j)-'0'+flag;
if(flag<2){
res.append(flag);
flag=0;
}
else if(flag>2){
res.append(flag-2);
flag=1;
}
else{
res.append("0");
flag=1;
}
i--;
j--;
}
return res.reverse().toString();
}
最后
以上就是单薄嚓茶为你收集整理的【leetcode】第67题 Add Binary 题目+解析+JAVA代码的全部内容,希望文章能够帮你解决【leetcode】第67题 Add Binary 题目+解析+JAVA代码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复