LeetCode-Add Binary
2014-09-14 18:08
323 查看
作者:disappearedgod
文章出处:/article/3730228.html
时间:2014-9-14
题目
Total Accepted: 16832 Total
Submissions: 64705My Submissions
Given two binary strings, return their sum (also a binary string).
For example,
a =
b =
Return
复杂的想法是用异或。
Solution(持续更新,java>c++)
文章出处:/article/3730228.html
时间:2014-9-14
题目
Add Binary
Total Accepted: 16832 TotalSubmissions: 64705My Submissions
Given two binary strings, return their sum (also a binary string).
For example,
a =
"11"
b =
"1"
Return
"100".
想法
最简单想法是按照十位数加法,注意的是从最后一位相加。复杂的想法是用异或。
代码
public class Solution { public String addBinary(String a, String b) { int l_a = a.length(); int l_b = b.length(); int max = Math.max(l_a,l_b); int min = Math.min(l_a,l_b); if(l_a < l_b) { String tmp = a; a = b; b = tmp; } int carry = 0; int ai= 0; int bi = 0; StringBuffer s = new StringBuffer(); for(int i = 0; i < max; i++){ ai = a.charAt(max-1 - i) - '0'; if(i < min) bi = b.charAt(min-1 -i) - '0'; else bi = 0; ai = ai + bi + carry; carry = ai / 2; ai %= 2; s.append(ai+""); } if(carry!=0) s.append(carry); s.reverse(); return s.toString(); } }
结果
My Submissions for Add Binary
Submit Time | Status | Run Time | Language |
---|---|---|---|
4 minutes ago | Accepted | 400 ms | java |
返回
LeetCodeSolution(持续更新,java>c++)
相关文章推荐
- 【LeetCode】Add Binary
- leetcode -- Add Binary -- 简单要了解
- LeetCode刷题 | Add Binary
- [LeetCode]题解(python):067-Add Binary
- LeetCode: Add Binary
- Add Binary -- leetcode
- leetcode解题报告(26):Add Binary
- LEETCODE-Add Binary
- LeetCode(56)-Add Binary
- leetcode 67. Add Binary
- LeetCode 67 Add Binary
- leetcode-67-Add Binary
- LeetCode 067 Add Binary
- [leetcode]Add Binary
- 【LeetCode with Python】 Add Binary
- LeetCode 题目之4 Add Binary
- leetcode 刷题之路 55 Add Binary
- [Leetcode]Add Binary
- LeetCode – Refresh – Add Binary
- Leetcode学习(26)—— Add Binary