LeetCode-Add Binary
来源:互联网 发布:大数据产业园规划 编辑:程序博客网 时间:2024/06/05 10:55
首先把两个string对齐 用0填充前面
然后从后面开始每一位相加 记录得数和进位 将得数插入stringbuilder
注意char和int之间的转换 要 +'0' -'0' 这样就是 ‘1’变成1 否则直接用 ( int ) 的方法转换的话就会得到ascii
public class Solution { public String addBinary(String a, String b) { int bit = 1; int lenA = a.length(); int lenB = b.length(); StringBuilder sb = new StringBuilder (); int carry = 0; int sum = 0; while ( bit <= lenA || bit <= lenB ){ if ( bit <= lenA && bit <= lenB ){ sum = a.charAt ( lenA - bit)-'0' + b.charAt(lenB-bit) -'0' + carry; } else if ( bit > lenA ){ sum = b.charAt(lenB-bit) -'0' + carry; } else sum = a.charAt ( lenA - bit) -'0'+ carry; carry = sum / 2; int res = sum % 2; sb.insert( 0, (char)res ); bit ++; } return sb.toString(); }}
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
- LeetCode-Isomorphic Strings
- 条款32:确定人的public继承塑模出来is-a关系
- LeetCode Largest Rectangle in Histogram
- SLIC图像超像素分割算法解析
- 个人信息加密方案
- LeetCode-Add Binary
- 与AngularJS的约会之事件循环+watchers源码分析
- Math对象的几个取整方法(ceil,floor,round)
- [LeetCode]Sliding Window Maximum
- 黑马程序员———OC中的内存管理
- 黑马程序员--较深入研究@property
- 你的态度,你的旅途风景
- 黑马程序员---浅析深浅复制
- 黑马程序员-iOS应用设计规范大全