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’
image.pngimage.png


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