67. 二进制求和


67. 二进制求和

难度简单 568

给你两个二进制字符串,返回它们的和(用二进制表示)。

输入为 **非空  **字符串且只包含数字 10

示例  1:

输入: a = “11”, b = “1”

输出: “100”

示例  2:

输入: a = “1010”, b = “1011”

输出: “10101”

public String addBinary(String a, String b) {
        StringBuffer ans = new StringBuffer();

        int n = Math.max(a.length(), b.length()), carry = 0;
        for (int i = 0; i < n; ++i) &#123;
            carry += i < a.length() ? (a.charAt(a.length() - 1 - i) - '0') : 0;
            carry += i < b.length() ? (b.charAt(b.length() - 1 - i) - '0') : 0;
            ans.append((char) (carry % 2 + '0'));
            System.out.println("carry % 2 + '0'="+carry % 2 + '0');
            System.out.println("(char)(carry % 2 + '0')="+(char)(carry % 2 + '0'));
            carry /= 2;
            System.out.println("carry/=2 ="+ carry );
        &#125;

        if (carry > 0) &#123;
            ans.append('1');
        &#125;
        ans.reverse();

        return ans.toString();
    &#125;

//作者:LeetCode-Solution
//链接:https://leetcode-cn.com/problems/add-binary/solution/er-jin-zhi-qiu-he-by-leetcode-solution/

stdout


ans.append((char) (carry % 2 + ‘0’));//‘0’


文章作者:   future
版权声明:   本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 future !
 上一篇
257. 二叉树的所有路径 257. 二叉树的所有路径
257. 二叉树的所有路径难度简单 454 给定一个二叉树,返回所有从根节点到叶子节点的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 输入: 1 /   \ 2     3 \ 5 输出: [“1->2->5”, “1
下一篇 
108. 将有序数组转换为二叉搜索树 108. 将有序数组转换为二叉搜索树
108. 将有序数组转换为二叉搜索树难度简单 705 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 **高度平衡  **二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过
  目录