leetcode_67 add binary

原创 2016年05月30日 10:56:48

string addBinary(string a, string b){
	if(a=="0" || a.empty())
		return b;
	if(b=="0" || b.empty())
		return a;
	
	int indexa = a.size()-1;
	int indexb = b.size()-1;
	
	string result;	
	int aa,bb, rem,carry ;
	aa=bb=rem=carry = 0;
	
//	while(indexa>=0 || indexb >=0){
//		aa= indexa<0 ? 0 : a[indexa]-'0';  //转换成数字 
//		bb = indexb<0? 0 : b[indexb]-'0';
//		rem = (aa+bb+carry)%2;
//		carry = (aa+bb+carry)/2;
//		
//		//rem = rem+'0';          //转换成字符 
//		//rem += rem;
//		result.insert(result.begin(),rem+'0');    //每次插入到string的首部,就不用翻转了 
//		
//		indexa--;
//		indexb--;
//	}
    for(;indexa>=0||indexb>=0; indexa--,indexb--){
    	aa= indexa<0 ? 0 : a[indexa]-'0';           //转换成数字 
		bb = indexb<0? 0 : b[indexb]-'0';
		rem = (aa+bb+carry)%2;
		carry = (aa+bb+carry)/2;
		result.insert(result.begin(),rem+'0');  
	} 
	
	if(carry==1)
		result.insert(result.begin(),'1');
	
	cout << result << endl;
//	strrev((char*)result.c_str());
//	reverse(result.begin(),result.end());
	return result;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

LeetCode 67 — Add Binary(C++ Java Python)

题目:http://oj.leetcode.com/problems/add-binary/ Given two binary strings, return their sum (also a bi...

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
  • 1691

LeetCode-67 Add Binary(二进制数相加)

LeetCode-67 Add Binary(二进制数相加) Given two binary strings, return their sum (also a binary string). ...

LeetCode 67 Add Binary(二进制相加)(*)

翻译给定两个二进制字符串,返回它们的和(也是二进制字符串)。例如, a = "11" b = "1" 返回 "100".原文Given two binary strings, return their...
  • NoMasp
  • NoMasp
  • 2016年02月02日 13:49
  • 1952

LeetCode笔记:67. Add Binary

模拟两个字符串二进制数的加法

Add Binary - LeetCode 67

题目描述:Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "...
  • bu_min
  • bu_min
  • 2015年04月24日 22:05
  • 261

LeetCode 67. Add Binary(二进制加)

原题网址:https://leetcode.com/problems/add-binary/ Given two binary strings, return their sum (also a ...
  • jmspan
  • jmspan
  • 2016年05月22日 00:04
  • 277

LeetCode-67. Add Binary

问题描述Given two binary strings, return their sum (also a binary string). For example, a = “11” b = ...

leetcode--67. Add Binary

leetcode

?【Leetcode】67. Add Binary

Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "1" Ret...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leetcode_67 add binary
举报原因:
原因补充:

(最多只允许输入30个字)