2019-09-27

LeetCode算法题17:


题目描述

解题思路:这道题是一道关于二进制求和的问题,虽然思路比较简单,但是写起来却有点难,首先需要让输入的两个二进制字符串的长度保持相等,长度为两个的最大长度+1,做运算的时候对字符串的每位进行相加,若大于等于2则进一位,同时,若最后首位为0,则去掉首位

var addBinary = function(a, b) {
//获取两个字符串的最大长度+1
  var maxLen=Math.max(a.length,b.length)+1;
//补全二进制字符串的长度为最大长度
  while(a.length!=maxLen){a+='0';}
  while(b.length!=maxLen){b+='0';}
    var c=[];
    for(var i=maxLen-1;i>=0;i--){
        c[i]=c[i]?(c[i]+(a[i]-0)+(b[i]-0)):((a[i]-0)+(b[i]-0));
        if(c[i]>1){
           c[i-1]=c[i-1]?(c[i-1]+1):1;
            c[i]=c[i]-2;
           }
    }
    if(!c[0]){c.shift();}
    return c.join('');
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 继续《华杉讲透孟子》,“有孺子歌曰:‘沧浪之水清兮,可以濯我缨;沧浪之水浊兮,可以濯我足。’孔子曰:‘小子听之!清...
    居合攻守之道阅读 1,833评论 0 2
  • 这个我应该比较有发言权,因为我最开始的时候基本上连发音都不会,慢慢的后来,认识音标、学习语法、练习语音语调,到现在...
    环球英语Jason老师阅读 5,576评论 0 32
  • 零、触发为什么要搞这个事? 想要,去做,做到。 在18年底整合了一个属于自己的个人系统模型,但是一直没有运行起来,...
    海鸥老师阅读 1,917评论 0 1
  • 究竟为何离职呢?这样的疑问我也经常从心头冒起,顺着这个思维,一连串的情绪和分析随之而来。那些吐过又吐过的槽,被这股...
    呼噜噜睡阅读 1,072评论 0 1
  • 下夜班查完房之后早上没有吃饭,感觉身体虚弱,回家后照顾自己的身体,为自己加了两个鸡蛋。 烧一壶热水泡上我的小甘菊茶...
    韩溪流阅读 3,775评论 0 1