[LeetCode]二进制求和
题目
代码
class Solution {
public:string addBinary(string a, string b){int lenA = a.length();int lenB = b.length();string result;int addFlag = 0;int i;int current = 0;for (i = 0;i < lenA&&i < lenB;i++){int numA = a[lenA - i - 1] - '0', numB = b[lenB - i - 1] - '0';current = (addFlag + numA + numB) % 2;result.push_back((char)('0' + current));addFlag = numA + numB + addFlag > 1 ? 1 : 0;}if (lenA > lenB){for (;i < lenA;i++){current = ((a[lenA - i - 1] - '0') + addFlag) % 2;result.push_back('0' + current);addFlag = a[lenA - i - 1]-'0' + addFlag > 1 ? 1 : 0;}if (addFlag == 1)result.push_back('1');}else if (lenA < lenB){for (;i < lenB;i++){current = ((b[lenB - i - 1] - '0') + addFlag) % 2;result.push_back('0' + current);addFlag = b[lenB - i - 1]-'0' + addFlag > 1 ? 1 : 0;}if (addFlag == 1)result.push_back('1');}else{if (addFlag == 1)result.push_back('1');}std::reverse(result.begin(), result.end());return result;}
};
转载于:https://www.cnblogs.com/lizhenghao126/p/11053579.html
[LeetCode]二进制求和相关推荐
- leetcode 二进制求和 addBinary
题目描述: 给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1&quo ...
- java两个二进制数求和,Leetcode 67:Add Binary(二进制求和)
Leetcode 67:Add Binary(二进制求和) (python.java) Given two binary strings, return their sum (also a binar ...
- LeetCode:二进制求和【67】
LeetCode:二进制求和[67] 题目描述 给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11" ...
- 【LeetCode·位运算.67】二进制求和,详解分析+两种思路+知识点总结
二进制求和
- [每日一题] 106. 二进制求和(字符串、数学)
1. 题目来源 链接:二进制求和 来源:LeetCode 2. 题目说明 给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例1: 输入: a = & ...
- 67. 二进制求和(转换法)
二进制求和(C, Python实现) 1. 题目描述 2. 题目分析 3. C语言实现 4. Python实现 1. 题目描述 难度:简单 2. 题目分析 转换法(Python) 转换法是最容易想到的 ...
- 二进制求和和x的平方根
二进制求和没什么可说的,就是一个很简单的相加,跟加一那道题的做法基本一致(准确来说就是完全一致).之所以提一下,是因为今天第一次遇到内存泄漏--之前写的基本是有自动GC和内存管理的语言(比如Java) ...
- LeetCode 67. 二进制求和
1. 题目 给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1:输入: a = "11", b = "1" ...
- Leetcode每日一题:67.add-binary(二进制求和)
思路:利用二进制规则,选长度最长的为标准,从两个字符串尾部开始相加,对应位求和sum,之后置该位为sum%2,进位为sum/2: string addBinary(string a, string b ...
最新文章
- java maven -DskipTests 和 -Dmaven.test.skip=true 区别
- CTFshow php特性 web141
- WebService怎样在IIS上部署
- 阿里云文件上传工具类
- 如何在Chrome development tool里查看C4C前台发送的未经 GZIP 压缩之前的请求细节
- leetcode53 dp and 分治
- 分词相关技术(转载)
- 淘宝成全球电商第一人气网站
- ROS笔记(21) 地图
- JavaScript-No.01 JavaScript实现封装、继承、多态
- 数据结构与算法C语言版—— 数据结构的详细介绍
- (视频分辨率介绍)混淆的概念:SIF与CIF、4CIF与D1
- PIN track 1000x1000's result
- 怎么科学解读闪电鞭?年轻人我劝你耗子尾汁,好好反思
- stable diffusion制作韩国版AI女友关键词
- ensp华为路由器静态配置和动态配置
- 编写51单片机程序,输出方波,at89s52的单片机
- a16z:元宇宙解锁游戏基础设施中的新机遇
- 全球5G设备商最新排名
- iOS配置证书:Provisioning profile xx_Distribution doesn't include signing certificate iPhone Developer
热门文章
- 大数据 互联网架构阶段 Redis(三)redis集群
- 【IT资讯】TIOBE 7月编程语言排行榜显示,这些编程语言更吃香
- oracle10g的silent,Linux 静默(Silent) 安装Oracle 10g
- 一个整数数组,每个数字都出现K次,只有一个数字出现M次,找出这个数字(线性时间)
- java ajax翻页_分页 工具类 前后台代码 Java JavaScript (ajax) 实现 讲解
- r8169驱动下载linux,CentOS自带R8169驱动与R8168网卡之间的烦恼
- Objective-C MacOS以管理员权限运行程序
- Navicat for MySQL在ubuntu下运行没有反应
- MFC 获取命令行参数
- 内存的静态分配和动态分配的区别【转】