String - 67. Add Binary
时间:2022-07-25
本文章向大家介绍String - 67. Add Binary,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
- Add Binary
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"
思路:
题目是意思是实现二进制加法,给定两个二进制字符串,实现加法,做法就是用两个指针,从后往前遍历,把每一位加起来,满二进一。
代码:
go:
func addBinary(a string, b string) string {
var (
ap = len(a) - 1
bp = len(b) - 1
res = make([]byte, max(bp, ap) + 2)
rp = len(res) - 1
)
for ap >= 0 || bp >= 0 {
if ap >= 0 {
res[rp] += (a[ap] - '0')
if res[rp] > 1 {
res[rp-1] = 1
res[rp] = 0
}
ap--
}
if bp >= 0 {
res[rp] += (b[bp] - '0')
if res[rp] > 1 {
res[rp-1] = 1
res[rp] = 0
}
bp--
}
res[rp] += '0'
rp--
}
// index 0 add '0'
res[rp] += '0'
if len(res) == 0 {
return ""
}
if res[0] == '0' {
res = res[1:]
}
return string(res)
}
func max(i, j int) int {
if i > j {
return i
}
return j
}
- CentOs7.3 搭建 Redis-4.0.1 单机服务
- Shodan新手入坑指南
- 我用过的——Spring定时任务的几种用法
- CentOs7.3 搭建 SolrCloud 集群服务
- CentOs7.3 搭建 Solr单机服务
- CentOs7.3 搭建 ZooKeeper-3.4.9 Cluster 集群服务
- CentOs7.3 ssh 免密登录
- 基础篇章:关于 React Native 之 Touchable 系列组件的讲解
- 基础篇章:关于 React Native 之 Navigator 组件的讲解
- CentOs7.3 搭建 ZooKeeper-3.4.9 单机服务
- Ubuntu 17.04 编译安装 Nginx 1.9.9
- CentOS7.3 安装 iptables 与详细使用
- CentOs7.3 安装 maven3.5
- 基础篇章:关于 React Native 之 Picker 组件的讲解
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Git分支操作
- 5.02-requests_proxy
- 5.03-requests_ssl
- 5.04-requests_cookies
- 通过 Node.js 小示例学习浏览器缓存策略
- [未解决]报错: execjs._exceptions.ProgramError: TypeError: Cannot read property 'extend' of undefined
- 5.05-requests_cookies2
- 5.06-re
- Python3爬虫 利用百度地图api得到城市经纬度
- [未解决]报错: pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in y
- 6.01-re-split_chinese
- Mac上安装tesseract-OCR
- 6.02-news_re
- 6.03-news_xpath2
- 修改mysql密码