Add to List 67. Add Binary

来源:互联网 发布:手机淘宝积分怎么兑换 编辑:程序博客网 时间:2024/05/22 12:00

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

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

class Solution {
public:
    string addBinary(string a, string b) {
        string s="";
        int la=a.length()-1,lb=b.length()-1;
        int c=0;
        while(la>=0||lb>=0||c==1){
            //c+=(la>=0)?a[la--]:0;
            //c+=(lb>=0)?b[lb--]:0;//错误,应减去‘0’,由char得到数字’
            c+=(la>=0)?a[la--]-'0':0;
            c+=(lb>=0)?b[lb--]-'0':0;

            s=char(c%2+'0')+s;
            c=c/2;
        }
        return s;


    }
};

原创粉丝点击