首页 > 代码库 > [LeetCode] Add Binary
[LeetCode] Add Binary
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
1 class Solution 2 { 3 public: 4 string addBinary(string a, string b) 5 { 6 string c; 7 int carry = 0; 8 int tmp = 0; 9 int size = max(a.size(), b.size());10 11 //逆序,更好处理12 reverse(a.begin(), a.end());13 reverse(b.begin(), b.end());14 15 16 for(int i = 0; i < size ; i++)17 { 18 int ta = 0;19 int tb = 0;20 if(i < a.size()) //越界处理21 ta = a[i] - ‘0‘;//处理字符串22 if(i < b.size()) //越界处理23 tb = b[i] - ‘0‘;//处理字符串24 25 tmp = ta + tb + carry;26 c.insert(c.begin(), tmp % 2 + ‘0‘);27 carry = tmp / 2;28 } 29 30 if(carry != 0)31 c.insert(c.begin() ,‘1‘);32 return c;33 } 34 } ;
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。