67. 이진 합
자신의 (이진수로 표현)에 두 개의 바이너리 문자열과 수익을 감안할 때.
그리고 비어 있지 않은 입력 문자열은 숫자 0과 1이 포함되어 있습니다.
실시 예 1 :
입력 A = "11", B = "1"
출력 "100"
출처 : 숙박 버튼 (LeetCode)
링크 : HTTPS : //leetcode-cn.com/problems/add-binary는
모든 네트워크에서 공제 저작권. 상업 무단 전재 소스를 표시하시기 바랍니다 승인 된 공식, 비상업적 재판에 문의하시기 바랍니다.
이하 파 0으로 짧은 길이의 두 개의 스트링 및 최종 캐리 경우 저차 계산부터 차례로 새로운 스트링을 기입하고, 1에서 전체의 출력을 끝낸다 : 생각 문자열이 될 수 역합니다.
class Solution {
public String addBinary(String a, String b) {
StringBuilder res=new StringBuilder();
int carray=0;
for(int i=a.length()-1,j=b.length()-1;i>=0||j>=0;i--,j--)
{
int sum=carray;
sum+=i>=0?a.charAt(i)-'0':0;
sum+=j>=0?b.charAt(j)-'0':0;
res.append(sum%2);
carray=sum/2;
}
res.append(carray>0?1:"");
return res.reverse().toString();
}
}