两个二进制数相加后得到新的二进制数
来源:互联网 发布:大人认字软件 编辑:程序博客网 时间:2024/06/06 00:41
public static void main(String[] args) {String str1 = "1010";String str2 = "1011";System.out.println(addBinary(str1,str2));}public static String addBinary(String a, String b) { if(a == null || a.isEmpty()) { return b; } if(b == null || b.isEmpty()) { return a; } char[] aArray = a.toCharArray(); char[] bArray = b.toCharArray(); StringBuilder stb = new StringBuilder(); int i = aArray.length - 1; int j = bArray.length - 1; int aByte; int bByte; int carry = 0; int result; while(i > -1 || j > -1 || carry == 1) { aByte = (i > -1) ? Character.getNumericValue(aArray[i--]) : 0; bByte = (j > -1) ? Character.getNumericValue(bArray[j--]) : 0; result = aByte ^ bByte ^ carry; carry = ((aByte + bByte + carry) >= 2) ? 1 : 0; stb.append(result); } return stb.reverse().toString(); }
阅读全文
0 0
- 两个二进制数相加后得到新的二进制数
- 二进制数相加或两个数相加(C++)
- 两个n位二进制数相加
- leetCode 之 两个二进制数相加
- 实现二进制数相加
- leetcode 之 二进制数相加
- 算法Day5-二进制数相加
- Add Binary 二进制数相加
- 微软一面:输入两个数,相加求和,二进制输出
- Add binary 两个String形式二进制数相加
- 【C语言】得到浮点数的二进制
- 把一个数的二进制表示反转后得到的数
- 两个二进制数异或的结果
- 计算两个二进制数的和。
- 两个二进制数异或的结果
- 求两个二进制数的最大公约数
- 两个字符串表示的二进制数求和
- leetcode_67. Add Binary 字符串形式的二进制数相加
- 简单配置nginx使之支持pathinfo
- iOS11 正确控制导航leftBarButtonItems的关于 leftBarButtonItems 结构分析
- linux shell 将多行文件转换为一行
- caffe源码解析之Blob 及Python和C++接口调用
- linux下的定时任务与延时任务
- 两个二进制数相加后得到新的二进制数
- xampp链接本地数据库和PHPstudy连接数据库
- UVa1625
- opencv3.1.0+VS2013+win7 配置与测试
- flume介绍与原理
- 一些期刊的影响因子
- graph cut
- android studio界面初识
- IntelliJ IDEA中关于get、set方法Code template的编辑,用于修改get、set注释