首页 > 其他 > 详细

leetcode Add Binary

时间:2015-02-28 20:15:46      阅读:123      评论:0      收藏:0      [点我收藏+]
 1 class Solution {
 2 public:
 3     string addBinary(string a, string b) {
 4         int aL = a.length();
 5     int bL = b.length();
 6     int cL;
 7     if (aL > bL)
 8         cL = aL + 1;
 9     else
10         cL = bL + 1;
11     char *c = new char[cL+1];
12     int k = aL-1;
13     int j = bL - 1;
14     int flag = 0;
15     for (int i = cL - 1; i >= 1; i--)
16     {
17         if (k == -1)
18         {
19             int sum = b[j] - 0 + flag;
20             c[i] = sum%2+0;
21             flag = sum / 2;
22             j--;
23         }
24         else if (j == -1)
25         {
26             int sum = a[k] - 0 + flag;
27             c[i] = sum % 2+0;
28             flag = sum / 2;
29             k--;
30         }
31         else
32         {
33             int sum = flag + a[k]-0 + b[j]-0;
34             c[i] = sum % 2 + 0;
35             flag = sum / 2;
36             k--;
37             j--;
38         }
39     }
40     c[0] = flag + 0;
41     c[cL] = 0;
42     if (c[0] == 0)
43         return &c[1];
44     else
45         return c;
46     }
47 };

 

leetcode Add Binary

原文:http://www.cnblogs.com/chaiwentao/p/4306127.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!