leetcode67.二进制求和

java 复制代码
public class Solution {
    public String addBinary(String a, String b) {
        StringBuilder result = new StringBuilder();
        int i = a.length() - 1;
        int j = b.length() - 1;
        int carry = 0;
        
        while (i >= 0 || j >= 0 || carry != 0) {
            int sum = carry;
            if (i >= 0) {
                sum += a.charAt(i--) - '0';  // 转换为数字
            }
            if (j >= 0) {
                sum += b.charAt(j--) - '0';  // 转换为数字
            }
            
            // 使用位运算计算当前位和进位
            result.append(sum & 1);        // 当前位
            carry = (sum >> 1) & 1;        // 进位
        }
        
        return result.reverse().toString();
    }
}    
相关推荐
爱喝矿泉水的猛男9 分钟前
非定长滑动窗口(持续更新)
算法·leetcode·职场和发展
YuTaoShao15 分钟前
【LeetCode 热题 100】131. 分割回文串——回溯
java·算法·leetcode·深度优先
YouQian7721 小时前
Traffic Lights set的使用
算法
go54631584652 小时前
基于深度学习的食管癌右喉返神经旁淋巴结预测系统研究
图像处理·人工智能·深度学习·神经网络·算法
aramae2 小时前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
大锦终3 小时前
【算法】前缀和经典例题
算法·leetcode
想变成树袋熊3 小时前
【自用】NLP算法面经(6)
人工智能·算法·自然语言处理
cccc来财3 小时前
Java实现大根堆与小根堆详解
数据结构·算法·leetcode
Coovally AI模型快速验证4 小时前
数据集分享 | 智慧农业实战数据集精选
人工智能·算法·目标检测·机器学习·计算机视觉·目标跟踪·无人机
墨尘游子4 小时前
目标导向的强化学习:问题定义与 HER 算法详解—强化学习(19)
人工智能·python·算法