67. Add Binary

来源:互联网 发布:淘宝whoo小样是真的吗 编辑:程序博客网 时间:2024/06/05 19:47

Given two binary strings, return their sum (also a binary string).

For example,
a = "11"
b = "1"
Return "100".

public class Solution {    public String addBinary(String a, String b) {         if(a.length() < b.length()){            String tmp = a;            a = b;            b = tmp;        }        int pa = a.length()-1;        int pb = b.length()-1;        int carries = 0;        String rst = "";        while(pb >= 0){            int sum = (int)(a.charAt(pa) - '0') + (int)(b.charAt(pb) - '0') + carries;            rst = String.valueOf(sum % 2) + rst;            carries = sum / 2;            pa --;            pb --;        }        while(pa >= 0){            int sum = (int)(a.charAt(pa) - '0') + carries;            rst = String.valueOf(sum % 2) + rst;            carries = sum / 2;            pa --;        }               if (carries == 1)            rst = "1" + rst;        return rst;        }}

0 0
原创粉丝点击