栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

leetcode(十六)二进制求和

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

leetcode(十六)二进制求和

掌握String的新方法:reverse(start,end),倒置string数组从start到end位置的元素,彻底掌握string的基础操作,包括insert,at,以及用数组的方式取出string里面的元素以及从string里面取出来元素。掌握进位方法:设置一个值carry,让他carry/=2,即对2整除,能整除说明可以进位(二进制中),不能整除说明有进位,这意味传值为carry%2,因为有可能上一位有进位,这一位是1+1。以及本体一个比较妙的思想,采用string中的元素是否等于1来决定该位的值。对于不同长度的两个数组,相加时,如果一个数组没有另一个数组长,直接取最大,然后判断,当迭代到大于小的数组的长度的时候就将这次开始的短的数组的值置0即可。

class Solution {
public:
    string addBinary(string a, string b) {
        int size = max(a.length(),b.length());
        int carry = 0;
        reverse(a.begin(),a.end());
        reverse(b.begin(),b.end());
        string c;
        for(int i = 0;i 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/298738.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号