赞
踩
leetCode67. 二进制求和
题目思路:
class Solution { public: string addBinary(string a, string b) { reverse(a.begin(),a.end()); reverse(b.begin(),b.end()); string res; // 这三个条件,遵循短路原则,i<a.size()不成立,看i<b.size()不成立,若t为0才退出,防止t=1没有来的及处理 for(int i = 0, t = 0; i < a.size() || i < b.size() || t; i++){ if(i < a.size()) t += a[i] - '0'; if(i < b.size()) t += b[i] - '0'; res += to_string(t % 2); t /= 2; } reverse(res.begin(), res.end()); return res; } };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。