其他分享
首页 > 其他分享> > [简单] 67. 二进制求和

[简单] 67. 二进制求和

作者:互联网

https://leetcode-cn.com/problems/add-binary/

 

抄来的,别人家的解决方案:

class Solution {
    public String addBinary(String a, String b) {
        if(a == null || a.length() == 0) return b;
        if(b == null || b.length() == 0) return a;

        StringBuilder stb = new StringBuilder();
        int i = a.length() - 1;
        int j = b.length() - 1;
        
        int c = 0;  // 进位
        while(i >= 0 || j >= 0) {
            if(i >= 0) c += a.charAt(i --) - '0';
            if(j >= 0) c += b.charAt(j --) - '0';
            stb.append(c % 2);
            c >>= 1;
        }
        
        String res = stb.reverse().toString();
        return c > 0 ? '1' + res : res;
    }
}
View Code

 

标签:int,return,String,stb,二进制,res,求和,length,67
来源: https://www.cnblogs.com/chenxiaomai/p/16098250.html