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

The input strings are both non-empty and contains only characters 1 or 0.

Example 1:

Input: a = "11", b = "1"

Output: "100"

Example 2:

Input: a = "1010", b = "1011"

Output: "10101"

class Solution {
public String addBinary(String a, String b) {
StringBuilder sb = new StringBuilder();
int i = a.length()-1, j = b.length()-1, carry = 0;
while(i >= 0 || j >= 0){
int sum = carry;
if(i >= 0) sum += a.charAt(i--) - '0';
if(j >= 0) sum += b.charAt(j--) - '0';
sb.append(sum % 2);
carry = sum / 2;
}
if(carry != 0) sb.append(carry);
return sb.reverse().toString();
}
}

最新文章

  1. NodeJS 初体验
  2. Ubuntu系统下的第一个console程序
  3. C#文本选中及ContextMenuStrip菜单使用
  4. C#遍历窗体所有控件或某类型所有控件
  5. mvc:view-controller
  6. hdu 3972 1 M possible
  7. Build Firefox 编译Firefox
  8. 【Stage3D学习笔记续】山寨Starling(十一):Touch事件体系
  9. Centos6.3 配置yum 163源
  10. Nginx 基本配置和日志分析
  11. codevs1033 蚯蚓的游戏问题
  12. pojg2744找一个最长的字符串x,使得对于已经给出的字符串中的任意一个y,x或者是y的子串,或者x中的字符反序之后得到的新字符串是y的子串。
  13. hdu1107武术(模拟题)
  14. 外网主机访问虚拟机下的Web服务器_服务器应用_Linux公社-Linux系统门户网站
  15. left join 后的条件 位置不同,查询的结果不同
  16. 阿里云SLB出现502 Bad Gateway 错误排查解决方法
  17. C#使用Linq to Sqlite
  18. Maven -DskipTests和-Dmaven.test.skip=true的区别
  19. html自定义弹框
  20. Linux init 命令

热门文章

  1. 其它课程中的python---6、python读取数据
  2. Socket通信1.0
  3. PHP面试 PHP基础知识 六(正则表达式)
  4. $.ajax(),传参要用data
  5. strlen、strcpy和strcmp源码
  6. Codeforces 1183A Nearest Interesting Number
  7. shell 检查文件夹是否包含文件,或者只是空文件
  8. 基础补充(四)——流程控制之if、while、for,break与continue
  9. 一份完整的 Java 成神路线图,值得收藏!
  10. USACO2012 Moo /// 模拟 oj21548