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) { if(a.size() == 0) return b; if(b.size() == 0) return a; string ret; int carry = 0; int i = a.size() - 1; int j = b.size() - 1; while(i>=0 && j>=0) { int tmp = a[i] - '0' + b[j] - '0' + carry; carry = tmp / 2; ret = (char)('0' + tmp%2) + ret; --i; --j; } while(i>=0) { int tmp = a[i] - '0' + carry; carry = tmp/2; ret = (char)('0' + tmp%2) + ret; --i; } while(j>=0) { int tmp = b[j] - '0' + carry; carry = tmp/2; ret = (char)('0' + tmp%2) + ret; --j; } if(carry) ret = (char)('0' + carry) + ret; return ret; } };
欢迎关注微信公众号——计算机视觉:
相关推荐
标题中的“67.addBinary.playground.zip”表明这是一个与LeetCode第67题相关的Swift编程练习项目。LeetCode是一个在线平台,提供各种算法题目供程序员练习和提升编程技能。第67题通常指的是将两个二进制数相加的问题...
标题中的"BINARY_ADD.rar"和描述中的"二进制加法的源代码"指出,这个压缩包文件包含的是关于二进制加法算法的源代码。二进制加法是计算机科学中最基本的操作之一,特别是在数字逻辑和计算领域。它是将两个二进制数...
public static String addBinary(String x, String y) { int i = x.length() - 1, j = y.length() - 1; int carry = 0; StringBuilder result = new StringBuilder(); while (i >= 0 || j >= 0) { int sum = ...
python对图像提取mask部分: 代码: ...# Add binary masks to images for img_item in os.listdir(images_path): print(img_item) img_path = os.path.join(images_path, img_item) img = cv2.
### 题目:**二进制求和** ... public String addBinary(String a, String b) { StringBuilder result = new StringBuilder(); int carry = 0; // 进位 int i = a.length() - 1; int j = b.length
`function.cpp`可能包含了实现二进制加法的函数,例如`addBinary(int a, int b)`,它接收两个整数(假设它们是二进制表示的),返回它们的二进制和。`function.h`可能是相应的头文件,声明了这个函数,方便在其他...
javascript js_leetcode题解之67-add-binary.js
- **Add Binary**:将两个二进制数相加。 - **Basic Calculator II**:实现一个基本计算器,读取一个表达式并返回计算结果。 本书通过实际编程案例,讲解了各种算法思想和技巧,涵盖了从基础的数据结构(如数组、...
- Add Binary(二进制加法):涉及到二进制数的处理和字符串操作。 - Count and Say(计数和读法):一种涉及生成下一个字符串序列的方法。 - Longest Common Prefix(最长公共前缀):处理字符串数组中的公共前缀...
LeetCode的第67题,也被称为“Add Binary”,要求我们将两个非负整数表示为二进制字符串,然后将它们相加,返回结果的二进制形式。这个问题的核心在于理解二进制运算的规则,包括二进位的加法(0+0=0, 0+1=1, 1+0=1,...
401 | [Binary Watch](https://leetcode.com/problems/binary-watch/) | [C++](./C++/binary-watch.cpp) [Python](./Python/binary-watch.py) | _O(1)_ | _O(1)_ | Easy | | 411 | [Minimum Unique Word ...
题目提供的代码实现了一个名为`Solution`的类,其中包含一个名为`addBinary`的公共方法。这个方法首先处理两个字符串长度不一致的情况,通过在较短的字符串前面添加零来确保它们具有相同的长度。这样可以避免在后续...
def addBinary(num1, num2): carry = 0 result = '' # 让较短的二进制数前面补0,以便于同时处理 max_len = max(len(num1), len(num2)) num1 = '0' * (max_len - len(num1)) + num1 num2 = '0' * (max_len -...
- **二进制求和(Add Binary)**: 给定两个二进制字符串,返回它们的和。 - **基本计算器II(Basic Calculator II)**: 给定一个字符串表达式,实现一个基本计算器来计算并返回结果。 以上总结仅为部分知识点的简述,...
std::string addBinary(std::string a, std::string b) { int carry = 0; // 进位标志 int i = a.length() - 1, j = b.length() - 1; while (i >= 0 || j >= 0 || carry) { // 当遍历完所有位或者没有进位时...
pod repo add binary_spec git@github.com:caixiang305621856/open_binary_spec.git 2.安装mongodb # 进入 /usr/local cd /usr/local # 下载 sudo curl -O ...
* Add Binary:给定两个二进制字符串,返回其和。这个题目需要使用数学的思想,将二进制字符串转换为整数,并返回其和。 * Basic Calculator II:给定一个字符串,返回其计算结果。这个题目需要使用数学的思想,将...
- Add Binary: 给定两个二进制字符串,返回它们的和。 - Text Justification: 给定一个单词数组和一个长度 maxWidth,设计一个方法使得每行中单词之间的空间均匀分配,并且左右两端对齐。 - Sqrt(x): 计算并返回x的...