LeetCode::Add Binary
来源:互联网 发布:linux 网络学习 编辑:程序博客网 时间:2024/06/13 03:36
https://oj.leetcode.com/problems/add-binary/
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) { return b.size() > a.size() ? addOrderBinary(b, a) : addOrderBinary(a, b); }private: // The length of string a should be no shorter than string b. string addOrderBinary(string longStr, string shortStr) { string result(longStr); bool carry = false; string::size_type longLen = longStr.size(); string::size_type shortLen = shortStr.size(); string::size_type left = longLen - shortLen; int longStrIndex; int shortStrIndex; for (string::size_type i = shortLen; i > 0; i--) { longStrIndex = i + left - 1; shortStrIndex = i - 1; if (carry) { if (shortStr[shortStrIndex] == '1') { continue; } if (result[longStrIndex] == '0') { result[longStrIndex] = '1'; carry = false; } else { result[longStrIndex] = '0'; } } else { if (shortStr[shortStrIndex] == '0') { continue; } if (result[longStrIndex] == '0') { result[longStrIndex] = '1'; } else { result[longStrIndex] = '0'; carry = true; } } } for (string::size_type i = left; i > 0; i--) { if (!carry) { break; } longStrIndex = i - 1; if (result[longStrIndex] == '0') { result[longStrIndex] = '1'; carry = false; } else { result[longStrIndex] = '0'; } } if (carry) { result.insert(0, "1"); } return result; }};
0 0
- LeetCode: Add Binary
- [Leetcode] Add Binary
- LeetCode Add Binary
- Leetcode: Add Binary
- [Leetcode] Add Binary
- LeetCode : Add Binary
- LeetCode Add Binary
- [LeetCode] Add Binary
- leetcode 58: Add Binary
- leetcode Add Binary
- [LeetCode] Add Binary
- 【leetcode】Add Binary
- [LeetCode]Add Binary
- [leetcode]Add Binary
- LeetCode-Add Binary
- [leetcode] Add Binary
- LeetCode - Add Binary
- leetcode:Add Binary
- 工业4.0随想之安全4.0
- 软考-数据流图
- wikioi 1214 线段覆盖
- Marmoset/skyshop的基本介绍
- 72 题目:设计一个类,我们只能生成该类的一个实例
- LeetCode::Add Binary
- 80x86汇编小站-公告
- 黑客小帅收徒QQ2206686874
- 百钱百鸡问题
- Autolayout及VFL经验分享
- 用CImage加载内存里的Image
- leetcode - Valid Palindrome
- 73 对策字符串的最大长度 回文串的判断
- 黑马程序员_iOS开发之OC之面向对象之思想、类和对象