leetcode:Add Binary
来源:互联网 发布:周克华事件真相知乎 编辑:程序博客网 时间:2024/06/05 01:08
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
public class Solution { public String addBinary(String a, String b) { char cha[] = a.toCharArray(); char chb[] = b.toCharArray(); char ans[] = new char[(cha.length > chb.length ? cha.length : chb.length) + 1]; char flag = '0'; int alen = cha.length - 1; int blen = chb.length - 1; int anslen = ans.length - 1; while(alen >= 0 && blen >= 0){ ans[anslen] = getCur(cha[alen], chb[blen], flag); flag = getFlag(cha[alen], chb[blen], flag); --blen; --alen; --anslen; } if(alen < 0){ while(blen >= 0){ ans[anslen--] = getCur('0', chb[blen], flag); flag = getFlag('0', chb[blen--], flag); } } if(blen < 0){ while(alen >= 0){ ans[anslen--] = getCur('0', cha[alen], flag); flag = getFlag('0', cha[alen--], flag); } } ans[anslen] = flag; int startindex = 0; while(startindex < ans.length && ans[startindex] == '0'){ ++startindex; } return startindex == ans.length ? new String("0") : new String(ans, startindex, ans.length - startindex); } public char getCur(char a, char b, char c){ return (char)((a + b + c - 3 * Integer.valueOf('0')) % 2 + '0'); } public char getFlag(char a, char b, char c){ return (char)((a + b + c - 3 * Integer.valueOf('0')) / 2 + '0'); } }
0 0
- LeetCode: Add Binary
- [Leetcode] Add Binary
- LeetCode Add Binary
- Leetcode: Add Binary
- [Leetcode] Add Binary
- LeetCode : Add Binary
- LeetCode Add Binary
- [LeetCode] Add Binary
- leetcode 58: Add Binary
- leetcode Add Binary
- [LeetCode] Add Binary
- 【leetcode】Add Binary
- [LeetCode]Add Binary
- [leetcode]Add Binary
- LeetCode-Add Binary
- [leetcode] Add Binary
- LeetCode - Add Binary
- leetcode:Add Binary
- 简单记录mysql left join,right join,inner join用法
- The Anatomy of Hadoop IO Pipeline(译)(转载)
- asp和asp.net计算MD5值的解决方法
- 数据库ER模型
- Android混淆打包
- leetcode:Add Binary
- HDU 4847-Wow! Such Doge!(签到)
- 新的hadoop,新的开始(hadoop2.4.0)
- HDU ACM 1050 贪心
- 原来C++之父在大摩工作呀,而且还是总经理。。
- IOS开发第三方工具整合与比较
- 第四章 4.1.2节练习 & 4.1.3节练习
- this 构造器中调用构造器
- XML入门学习笔记之XML解析技术---DOM解析