leetcode中如何解决二进制求和问题
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,小编给大家分享一下leetcode中如何解决二进制求和问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!题目链接https
千家信息网最后更新 2025年12月01日leetcode中如何解决二进制求和问题
小编给大家分享一下leetcode中如何解决二进制求和问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
题目链接
https://leetcode-cn.com/problems/add-binary/
题目描述
给定两个二进制字符串,返回他们的和(用二进制表示)。
输入为非空字符串且只包含数字 1 和 0。
示例 1:
输入: a = "11", b = "1"
输出: "100"
示例 2:
输入: a = "1010", b = "1011"
输出: "10101"
解题方案
思路
标签:字符串
整体思路是将两个字符串较短的用0补齐,使得两个字符串长度一致,然后从末尾进行遍历计算,得到最终结果
本题解中大致思路与上述一致,但由于字符串操作原因,不确定最后的结果是否会多出一位进位,所以会有2种处理方式
第一种,在进行计算时直接拼接字符串,会得到一个反向字符,需要最后再进行翻转
第二种,按照位置给结果字符赋值,最后如果有进位,则在前方进行字符串拼接添加进位
时间复杂度:O(n)
代码
Java版本
class Solution {
public String addBinary(String a, String b) {
StringBuilder ans = new StringBuilder();
int ca = 0;
for(int i = a.length() - 1, j = b.length() - 1;i >= 0 || j >= 0; i--, j--) {
int sum = ca;
sum += i >= 0 ? a.charAt(i) - '0' : 0;
sum += j >= 0 ? b.charAt(j) - '0' : 0;
ans.append(sum % 2);
ca = sum / 2;
}
ans.append(ca == 1 ? ca : "");
return ans.reverse().toString();
}
}
JavaScript版本
/**
* @param {string} a
* @param {string} b
* @return {string}
*/
var addBinary = function(a, b) {
let ans = "";
let ca = 0;
for(let i = a.length - 1, j = b.length - 1;i >= 0 || j >= 0; i--, j--) {
let sum = ca;
sum += i >= 0 ? parseInt(a[i]) : 0;
sum += j >= 0 ? parseInt(b[j]) : 0;
ans += sum % 2;
ca = Math.floor(sum / 2);
}
ans += ca == 1 ? ca : "";
return ans.split('').reverse().join('');
};
画解

以上是"leetcode中如何解决二进制求和问题"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
字符
字符串
二进制
两个
思路
篇文章
结果
输入
问题
一致
内容
版本
示例
题目
输出
复杂
不怎么
代码
位置
原因
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国网网络安全培训通讯稿
中国学术期刊数据库3700
微信里面的网络安全是什么
bill软件开发
数据库面试宝典
恒银期货为什么会显示服务器异常
小兵步枪怎么服务器对战
芷江网络安全宣传周
nc600串口服务器驱动
服务器密码被黑如何用程序修改
留言板软件开发
台州电脑软件开发流程八个步骤
如何设计多级菜单数据库表
上海海砾网络技术服务中心
国外网络安全战略研究所
我的世界微软服务器地址
怎样导出软件数据库
为什么日本韩国一个服务器
自学考试数据库原理试题
标准服务器改nas
天行加速器没有获得服务器地址
pg数据库异地同步
贵阳支付宝服务器
藏地传奇服务器
学生会网络技术部发展方向
如何落实网络安全工作责任制
网络安全法第二十一条第五项
华为服务器sata是固态接口吗
掌握网络技术的员工
河南游星网络技术有限公司