LeetCode 67. 二进制求和
2018-04-02 17:09
477 查看
题目描述: 二进制求和
给定两个二进制字符串,返回他们的和(用二进制表示)。 案例:a =
"11"
b =
"1"
返回
"100"。
解题思路:
先写个一位加法器,然后依次把b加入a中。代码:
class Solution { public: string addBinary(string a, string b) { if(a.length() < b.length()) swap(a, b); for(int i = b.length()-1 ; i >= 0 ; i -- ) { if(b[i] == '1') f(a, b.length()-i); } return a; } void f(string& a, int n) { for(int i = a.length() -n ; i >= 0 ; i --) { if(a[i] == '0') { a.replace(i, 1, "1"); return; } else { a.replace(i, 1, "0"); if(i == 0) a.insert(0, "1"); } } } };
相关文章推荐
- [LeetCode]67 二进制相加
- (LeetCode)Add Binary --- 二进制求和
- leetcode67---Add Binary(二进制加法)
- LeetCode-67-Add Binary(二进制相加)
- leetcode 67. Add Binary 二进制相加
- 二进制字符串求和-leetcode Add Binary
- LeetCode 67. Add Binary (二进制相加)
- LeetCode 67 Add Binary(二进制相加)(*)
- LeetCode 67 Add Binary(二进制相加)(*)
- leetcode -- 67. Add Binary【统一形式简化代码+双指针 + 二进制规则 + 字符数字转换】
- 67. Add Binary (二进制求和)
- leetcode 67---Add Binary 二进制 进位 String
- leetcode 67. Add Binary (高精度加法)
- Leetcode-67. Add Binary
- 【LeetCode-面试算法经典-Java实现】【067-Add Binary(二进制加法)】
- leetcode 67: Add Binary
- 容易 二进制求和
- 二进制求和,lintcode
- LintCode(容易)二进制求和
- leetcode:67. Add Binary