67. Add Binary

来源:互联网 发布:蚁群算法应用 编辑:程序博客网 时间:2024/05/17 01:51

题目地址

二级制的大数运算,注意输入为0的情况。

class Solution {public:    string addBinary(string a, string b) {        reverse(a.begin(), a.end());        reverse(b.begin(), b.end());        string ans;        int i, carry = 0;        for (i = 0; i < a.size() || i < b.size(); ++i) {            int n1 = 0, n2 = 0;            if (i < a.size())                n1 = a[i] - '0';            if (i < b.size()) n2 = b[i] - '0';            int now = (n1 + n2 + carry) % 2;            carry = (n1 + n2 + carry) / 2;            ans += now + '0';        }        if (carry) ans += carry + '0';        reverse(ans.begin(), ans.end());        if (ans.size() == 0) ans += '0';        return ans;    }};
0 0
原创粉丝点击