67. Add Binary

0人阅读 评论(0) 收藏 举报
分类:

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) {
		swap( a,  b);
		int lenA = a.length();
		int lenB = b.length(); 
		int j = lenB-1; 
		int he, jingwei;
		jingwei = 0; 
		string ans = "";
		for (int i = lenA - 1; i >= 0; i--)
		{
			if (j >= 0){
				he = (a[i] - '0') + (b[j] - '0') + jingwei;
			}
			else   he = (a[i] - '0') + jingwei ; 

			jingwei= he / 2; 
			he = he % 2; 
			ans += to_string(he); 
			j--;
		}
		if (jingwei) ans += '1'; 
		reverse(ans.begin(), ans.end());

		return ans;
	}
	
	
	void swap(string & a, string &  b)
	{
		string temp; 
		if (b.length() > a.length())
		{
			temp = a;
			a = b;
			b = temp;
		}
	}
};

查看评论

Add Binary | leetcode 67 【Java解题报告】

Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "1" Re...
  • happyaaaaaaaaaaa
  • happyaaaaaaaaaaa
  • 2015年10月04日 14:23
  • 2003

leetcode 67 Add Binary C++

先对齐,在相加,注意进位即可。 string addBinary(string a, string b) { bool flag = false; int aSize...
  • a2331046
  • a2331046
  • 2016年06月13日 10:54
  • 399

【leetcode】67. Add Binary(Python & C++)

67. Add Binary题目链接67.1 题目描述:Given two binary strings, return their sum (also a binary string).For ex...
  • liuxiao214
  • liuxiao214
  • 2017年09月04日 20:18
  • 235

67. Add Binary [easy] (Python)

题目链接 https://leetcode.com/problems/add-binary/ 题目原文 题目翻译 思路方法 思路一 代码 说明 思路...
  • coder_orz
  • coder_orz
  • 2016年06月18日 17:29
  • 3144

LeetCode 67 : Add Binary (Java)

解题思路:从末尾依次对应相加来求,转成int中的相加会使代码比较简洁,因为可以用/和%来分别求出进位和当前往结果中添加的位。然后,把较长的字符串剩下的部分和进位相加放入结果。最后,还要判断进位此时是否...
  • changetocs
  • changetocs
  • 2015年12月03日 21:08
  • 716

[leetcode-67]Add Binary(C)

问题描述: Given two binary strings, return their sum (also a binary string).For example, a = “11” b =...
  • zdavb
  • zdavb
  • 2015年08月02日 22:41
  • 279

LeetCode(67) Add Binary

题目Given two binary strings, return their sum (also a binary string).For example, a = “11” b = “1” ...
  • fly_yr
  • fly_yr
  • 2015年08月19日 20:58
  • 1953

[C++]LeetCode: 9 Add Binary

题目: Given two binary strings, return their sum (also a binary string). For example, a = "11...
  • cinderella_niu
  • cinderella_niu
  • 2014年11月06日 21:36
  • 993

leetcode 67 Add Binary

Add Binary Total Accepted: 46815 Total Submissions: 189215 My Submissions                   ...
  • wangyaninglm
  • wangyaninglm
  • 2015年07月05日 21:49
  • 3188

67. Add Binary Leetcode Python

For example, a = "11" b = "1" Return "100". 这题的做法和前面一题plus one 一样,区别在于需要将两个string先相加,再判断是否要进位。 ...
  • hyperbolechi
  • hyperbolechi
  • 2015年02月04日 23:43
  • 656
    个人资料
    持之以恒
    等级:
    访问量: 4207
    积分: 473
    排名: 11万+
    最新评论