Add Binary
题目地址:
https://leetcode.com/problems/add-binary/description/
题目:
解题思路:
这道题就是模仿之前的将两个list相加的方法。
代码:
https://leetcode.com/problems/add-binary/description/
题目:
Given two binary strings, return their sum (also a binary string).
For example,
a =
b =
Return
a =
"11"b =
"1"Return
"100".这道题就是模仿之前的将两个list相加的方法。
代码:
public class AddBinary { public static void main(String[] args){ AddBinary addBinary = new AddBinary(); String a = "11"; String b = "111"; String rst = addBinary.addBinary(a, b); System.out.println(rst); } public String addBinary(String a, String b) { if (a == null || a.length() == 0) { return b; } if (b == null || b.length() == 0) { return a; } StringBuilder sb = new StringBuilder(); int i = a.length() - 1; int j = b.length() - 1; int sum = Character.getNumericValue(a.charAt(i)) + Character.getNumericValue(b.charAt(j)); sb.append(sum % 2); i--; j--; while(i >= 0 || j >= 0){ sum = sum >= 2 ? 1 : 0; if(i >= 0){ sum += Character.getNumericValue(a.charAt(i)); i--; } if(j >= 0){ sum += Character.getNumericValue(b.charAt(j)); j--; } sb.append(sum % 2); } if(sum >= 2){ sb.append(1); } return sb.reverse().toString(); } }

Comments
Post a Comment