题目https://leetcode-cn.com/problems/JFETK5/
class Solution {
public String addBinary(String a, String b) {
StringBuffer ans = new StringBuffer();
int la = a.length();
int lb = b.length();
int n = Math.max(la, lb);
int carry = 0;
for (int i = 0; i < n; i++) {
carry += i < la ? (a.charAt(la - 1 - i) - '0') : 0;
carry += i < lb ? (b.charAt(lb - 1 - i) - '0') : 0;
ans.append(carry % 2);
carry /= 2;
}
if (carry > 0) {
ans.append(carry);
}
ans.reverse();
return ans.toString();
}
}
该博客主要介绍了一个LeetCode上的编程问题,即如何将两个二进制数相加。解决方案中,博主使用了StringBuffer来存储结果,通过遍历最长的二进制数并考虑进位,最终得到二进制加法的结果。
297

被折叠的 条评论
为什么被折叠?



