leetcode 67 Add Binary C++

来源:互联网 发布:java 代码 加密 编辑:程序博客网 时间:2024/05/21 07:00

先对齐,在相加,注意进位即可。

string addBinary(string a, string b) {        bool flag = false;        int aSize = a.size();        int bSize = b.size();        while(aSize>bSize){            b = '0' + b;            bSize++;        }        while(bSize>aSize){            a = '0' + a;            aSize++;        }        string result = "";        while(aSize){            aSize--;            if(flag){                if((a[aSize] - '0')^(b[aSize]-'0')){                    result = '0' + result;                }                else if((a[aSize]-'0')&&(b[aSize]-'0')){                    result = '1' + result;                }else{                    result = '1' + result;                    flag = false;                }            }else{                if((a[aSize]-'0')^(b[aSize]-'0'))                    result = '1' + result;                else if((a[aSize]-'0')&&(b[aSize]-'0')){                    flag = true;                    result = '0' + result;                }else{                    result = '0' + result;                }            }        }        if(flag) result = '1' + result;                return result;    }


0 0
原创粉丝点击