LeetCode-67. Add Binary
来源:互联网 发布:安邦 知乎 编辑:程序博客网 时间:2024/06/04 18:07
问题描述
- 给定两个字符串s1,s2,代表两个二进制数,字符串的最左端代表高位,最右边代表低位,返回两个二进制数相加后的值。
- 例如:s1=”11”,s2=”1”,返回:“100”.
解题思路
很简单的一道题,两个字符串的字符逐位相加即可,需要考虑进位的问题。
代码
public class Solution { public String addBinary(String a, String b) { if(a==null || a.length()==0) return b; if(b==null || b.length()==0) return a; if(a.length()<b.length()){ String tem=a; a=b; b=tem; }//始终将较长的字符串赋给a int[] array=new int[a.length()]; int i=array.length-1; int k=b.length()-1; int c=0; while(i>=0){ int bint=(k<0?0:b.charAt(k)-'0'); array[i]=a.charAt(i)-'0'+bint+c; if(array[i]>1){ array[i]=array[i]%2; c=1; }else{ c=0; } i--; k--; } StringBuilder sb=new StringBuilder(a.length()+1); if(c>0) sb.append(1); for(int j=0;j<a.length();j++){ sb.append(array[j]); } return sb.toString(); }}
阅读全文
0 0
- [LeetCode]67.Add Binary
- LeetCode --- 67. Add Binary
- [Leetcode] 67. Add Binary
- [leetcode] 67.Add Binary
- 【leetcode】67. Add Binary
- [leetcode] 67.Add Binary
- [leetcode] 67. Add Binary
- 【Leetcode】67. Add Binary
- 67. Add Binary LeetCode
- 【LeetCode】67. Add Binary
- leetcode--67. Add Binary
- leetcode 67. Add Binary
- LeetCode 67. Add Binary
- LeetCode *** 67. Add Binary
- leetcode 67. Add Binary
- 【leetcode】67.Add Binary
- LeetCode 67. Add Binary
- LeetCode-67.Add Binary
- CentOS配置本地yum源/阿里云yum源/163yuan源,并配置yum源的优先级
- 解决spring3.0.5使用RestTemplate发送post请求响应中文乱码问题
- Servlet学习日记(一)——什么是Servlet及手动编写一个简单的servlet
- 铺满整个屏幕
- opencv实现简单手指位置识别
- LeetCode-67. Add Binary
- Flex 布局教程
- Junit4入门
- centos5.11安装gcc
- 交换排序之冒泡排序
- 国际化插件vuex-i18n
- Eigen库的配置和基本用法
- Oracle -11g数据库 ---》1、Oracle 表空间
- 这是一篇Android RecyclerView使用介绍哦