【力扣精选算法100道】——二进制求和

LCR 002. 二进制求和 - 力扣(LeetCode)

目录

🎈了解题意

🎈算法分析

🚩cur1>=0

🚩cur2>=0

🚩t

🎈实现代码



🎈了解题意

遵循二进制加法法则,如果俩者相加等于2那么就“逢2进1”。如果俩者相加不等于2,那么就还是相加的结果(无非是0+0=0或者0+1=1),如果最高位相加等于2,也依旧逢2进1。


🎈算法分析

  • 1.我们首先再字符串a和字符串b中分别定义一个指标从最后一位开始,然后往前相加。
  • 2.定义t代表相加的结果。因为字符串a和b每个下标对应的元素是char型,我们要相加是int类型,需要将字符转int类型,相加字符串a中的字符更新t,相加字符串b中的字符更新t。
  • 3.如果t>=2的话,那么我们需要将其取模,然后当时的类型是char类型,我们需要char转换成int类型,然后ret就更新了。

字符转数字  char c      int ret=c-'0'

数字转字符  int   c       char ret=c+'0'

那么我们有没有想过循环的结束条件是什么?我们要分三种情况来推断出来。

🚩cur1>=0


🚩cur2>=0


🚩t


🎈实现代码


class Solution {
public:
    string addBinary(string a, string b) {
        string ret;
        int cur1=a.size()-1,cur2=b.size()-1,t=0;
        while(cur1>=0 || cur2>=0 || t)
        //因为最后t=1 的时候,虽然cur1和cur2到负数了,t还要加上
        {
            if(cur1>=0) t+=a[cur1--]-'0';//字符转数字-
            if(cur2>=0) t+=b[cur2--]-'0';
            ret+=t%2+'0';//数字转字符+
            t/=2;
        }
        reverse(ret.begin(),ret.end());
        return ret;
    }
};

我走的每一步都要心知肚明。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/452018.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

工具篇--分布式定时任务springBoot 整合 elasticjob使用(3)

文章目录 前言一、Springboot 整合:1.1 引入jar:1.2 配置zookeeper 注册中心:1.3 定义job 业务类:1.4 job 注册到zookeeper:1.5 项目启动:1.5.1 zookeeper 注册中心实例:1.5.2 任务执行日志输出…

【数据挖掘】练习1:R入门

课后作业1:R入门 一:习题内容 1.要与R交互必须安装Rstudio,这种说法对不对? 不对。虽然RStudio是一个流行的R交互集成开发环境,但并不是与R交互的唯一方式。 与R交互可以采用以下几种方法: 使用R Conso…

AHU 汇编 实验六

一、实验名称:实验6 输入一个16进制数,把它转换为10进制数输出 实验目的: 培养汇编中设计子程序的能力 实验过程: 源代码: data segmentbuff1 db Please input a number(H):$buff2 db 30,?,30 dup(?),13,10buff3 …

社交革命的引领者:探索Facebook如何改变我们的生活方式

1.数字社交的兴起 随着互联网的普及,社交媒体成为我们日常生活的重要组成部分。Facebook作为其中的先驱,从最初的社交网络演变成了一个拥有数十亿用户的全球化平台。它不仅改变了我们与世界互动的方式,还深刻影响了我们的社交习惯、人际关系以…

数据结构:树和二叉树

树的概念 1.树是一种非线性的数据结构。它是由n个有限节点的集合。 2.树分为根节点和子树。根节点没有前驱节点。 3.树的子树是由一个个子树组成,它们可以看作一个个集合。每个集合下面又有集合。 因此,树是递归定义的。 树形结构中,子树…

搜索引擎SEO策略介绍

baidu搜索:如何联系八爪鱼SEO baidu搜索:如何联系八爪鱼SEO baidu搜索:如何联系八爪鱼SEO 第一、 关键词的选择策略: 1、门户类的网站关键词选择策略: 网站每个页面本身基本都包含有关键词:网站拥有上百…

嵌入式数据库SQlite3-进阶篇

嵌入式数据库sqlite3 - HQ 文章目录 嵌入式数据库sqlite3 - HQ[toc] 嵌入式数据库sqlite3【进阶篇】数据库准备order子句Where 子句与逻辑运算符语法实例 group by子句having子句举例 函数SQLite COUNT 函数SQLite MAX 函数SQLite MIN 函数SQLite AVG 函数SQLite SUM 函数SQLit…

Qt 使用RAW INPUT获取HID触摸屏,笔设备,鼠标的原始数据,最低受支持的客户端:Windows XP [仅限桌面应用]

在开发绘图应用程序时,经常会需要读取笔设备的数据,通过对笔数据的解析,来判断笔的坐标,粗细。如果仅仅只是读取鼠标的坐标,就需要人为在应用程序端去修改笔的粗细,并且使用体验不好,如果可以实…

【C++】STL(五) Stack Queue容器

5、 stack容器 5.1 简介 ① stack是一种先进后出的容器,它只有一个出口。 ② 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为。 ③ 栈中进入数据称为:入栈 push ④ 栈中弹出数据称为:出栈 pop 5.2 常用接口 …

Fair Data Exchange:区块链实现的原子式公平数据交换

1. 引言 2024年斯坦福大学和a16z crypto research团队 论文 Atomic and Fair Data Exchange via Blockchain 中,概述了一种构建(包含过期EIP-4844 blobs的)fair data-markets的协议。该论文源自a16z crypto的暑期实习计划,与四名…

R语言tidycmprsk包分析竞争风险模型

竞争风险模型就是指在临床事件中出现和它竞争的结局事件,这是事件会导致原有结局的改变,因此叫做竞争风险模型。比如我们想观察患者肿瘤的复发情况,但是患者在观察期突然车祸死亡,或者因其他疾病死亡,这样我们就观察不…

KAFKA入门教程

目录 1.安装kafka 2.安装kafkamanager可视化工具 3.springboot整合kafka 1.pom导包 2.启动类和yml配置 3.代码演示 编写生产者: 消费者: 1.安装kafka 进入kafka官网下载对应版本kafka kafka官网地址:Apache Kafka kafka是使用Scal…

Kotlin 数据解析(Gson)

一、添加依赖 build.gradle.kts(:app) // gson数据解析implementation("com.google.code.gson:gson:2.8.6") 对象类: // 对象类 class Account {var uid:String "00001"var userName:String "Freeman"var password:String &quo…

Midjourney能让角色保持一致了

Midjourney发布新功能,网友直呼“不可思议”! 现在你可以让生成的图像几乎保持角色一致,belike: 所有超级英雄长一个模样盯着你。 甚至动漫风、写实风等跨风格生成也同样适用: 保持同一风格,感jio配上文字…

【python】自动化工具Selenium与playwright去除webdriver检测

对这个世界如果你有太多的抱怨 跌倒了就不敢继续往前走 为什么人要这么的脆弱 堕落 请你打开电视看看 多少人为生命在努力勇敢的走下去 我们是不是该知足 珍惜一切 就算没有拥有 🎵 周杰伦《稻香》 # -*- coding:utf-8 -*- import timefrom s…

【C语言】如何规避野指针

✨✨ 欢迎大家来到莉莉的博文✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 目录 一、概念: 二、野指针成因: 2.1. 指针未初始化 2.2 指针越界访问 3. 指针指向的空间释放 三、如何规避野指针 3.…

Manacher 算法——Leetcode 5.最长回文子串

在了解之前,我们先要了解什么是回文串,什么是回文子串。 回文串和回文子串: 回文串是指一个字符串正序遍历和反向遍历结果相同的字符串。如 ABBA,正着读反着读结果是一样的。 有了回文串的概念,回文子串的概念也就显…

STM32的DMA搬运串口数据

简介: 最近在学习stm32的外设初始化过程中,学到DMA这个外设的时候,还是花费了不少时间,特此记录一下。 实验:配置DMA搬运UART1的数据 ,串口调试工具给单片机发送数据,然后单片机回发给串口调试…

Python实现企业微信自动打卡程序二:跳过节假日,随机打卡时间,定时任务,失败通知

实现打卡时间随机范围 既然我们程序写完后需要定时执行,那定时执行打卡就会导致每次上班或下班打卡时都是同一时间,这并不好,为了避免被发现,每次打卡时间都是同一时间,这里我们优化程序,增加随机等待时间来…

CSS元素显示模式

CSS元素显示模式 定义&#xff1a;元素显示模式是指元素&#xff08;即标签&#xff09;以什么方式进行显示。 HTML元素分为块元素和行内元素 块元素 常见块元素 &#xff08;下列仅举出部分&#xff09; <h1>~<h6>、<p>、<div>、<ul>、<…