Leetcode 67. Add Binary 二进制加法 解题报告
2016-05-09 23:59
363 查看
1 解题思想
给定以字符串为形式表达的一个二进制数,需要求加法后的值。这道题是一个弱化版的高精度加法,整体来说和之前做题的方式很类似,注意加法结果可能比原来长一位
2 原题
Given two binary strings, return their sum (also a binary string).For example,
a = “11”
b = “1”
Return “100”.
3 AC解
public class Solution { /** * 处理好边界。。今天这道题写的太晚了。。写的有点潦草,见谅 * **/ public String addBinary(String a, String b) { char numa[]=a.toCharArray(); char numb[]=b.toCharArray(); int result[]=new int[Math.max(a.length(),b.length())+1]; int i=numa.length-1; int j=numb.length-1; int index; int n1,n2; int c=0; while(i>=0 || j>=0){ n1=0; n2=0; if(i>=0) n1=numa[i]-'0'; if(j>=0) n2=numb[j]-'0'; result[Math.max(i,j)+1]=((n1+n2+c)%2); c=(n1+n2+c)/2; i--; j--; } result[0]=c; if(c==0) index=1; else index=0; StringBuilder sb=new StringBuilder(); for(int k=index;k<result.length;k++){ sb.append(result[k]+""); } return sb.toString(); } }
相关文章推荐
- Python语言实现手机号归属地的方法
- stm32——Flash读写
- 与图形显示相关的VR官方教程总结
- python 编码
- POJ1611(并查集)
- Spring(五)AOP
- 跟我一起学习MySQL技术内幕(第五版):(第三章学习日记4)
- C#求亲密数
- & && java
- Tomcat中更改网站根目录
- MySQL高可用之MHA—MHA介绍
- 生活 *** 五月记
- ArrayList集合的一些用法
- 剑指offer—二进制中1的个数
- How does a relational database work
- 第五次作业(计算器第三步)
- 求0~n里面每个数二进制1的个数,用o(n)算法
- 第五课:Spark Streamingf 源码运行架构图
- 论文撰写及排版流程总结
- Combination Lock