码迷,mamicode.com
首页 > 其他好文 > 详细

【Leetcode】Add Binary

时间:2016-06-12 03:23:20      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:

题目链接:https://leetcode.com/problems/add-binary/
题目:

Given two binary strings, return their sum (also a binary string).

For example,
a = "11"
b = "1"
Return "100".

思路:

easy

算法:

[java] view plain copy
 技术分享技术分享
  1. public String addBinary(String a, String b) {  
  2.     String result = "";  
  3.     int length = Math.max(a.length(), b.length());  
  4.     int numsa[] = new int[length];  
  5.     int numsb[] = new int[length];  
  6.     int r[] = new int[length];  
  7.     for (int i = 0; i < a.length(); i++) {  
  8.         numsa[i] = (a.charAt(a.length() - 1 - i) == ‘0‘ ? 0 : 1);  
  9.     }  
  10.     for (int i = 0; i < b.length(); i++) {  
  11.         numsb[i] = (b.charAt(b.length() - 1 - i) == ‘0‘ ? 0 : 1);  
  12.     }  
  13.     int d = 0, val = 0;  
  14.     for (int i = 0; i < length; i++) {  
  15.         val = numsa[i] + numsb[i] + d;  
  16.         d = val / 2;  
  17.         val = val % 2;  
  18.         r[i] = val;  
  19.     }  
  20.     for (int i = 0; i < length; i++) {  
  21.         result += r[length - 1 - i] + "";  
  22.     }  
  23.     if (d == 1//有进位  
  24.         return "" + 1 + result;  
  25.     else  
  26.         return result;  
  27. }  

【Leetcode】Add Binary

标签:

原文地址:http://blog.csdn.net/yeqiuzs/article/details/51598076

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!