• ARTS Week 17


    Algorithm

    本周的算法题989. 数组形式的整数加法

    整数的 数组形式 num 是按照从左到右的顺序表示其数字的数组。

    • 例如,对于 num = 1321 ,数组形式是 [1,3,2,1]

    给定 num ,整数的 数组形式 ,和整数 k ,返回 整数 num + k数组形式

    示例 1

    输入:num = [1,2,0,0], k = 34
    输出:[1,2,3,4]
    解释:1200 + 34 = 1234
    • 1

    实现代码如下:

    var addToArrayForm = function (num, k{
        var numStr = ''
        var outStr = ''
        var outNum = []
        for (let i = 0; i < num.length; i++) {
            numStr = numStr + num[i]

        }
        outStr = BigInt(numStr) + BigInt(k) + ''
        for (let i = 0; i < outStr.length; i++) {
            if (outStr[i] !== 'n') {
                outNum.push(Number(outStr[i]))
            }
        }
        return outNum
    }
    • 1

    解题思路:

    首先,先将num数组转为数字,然后再和k相加,最后再次遍历为数组即可。在实现过程中遇到Number转换超长String会出现精度丢失问题,使用BigInt实现,但是因为BigInt格式后缀会有n,所以在转换为数组时,判断去掉n。

    Review

    Decimal point 150 years older than thought

    一项新发现令全球数学家兴奋不已。最近出土的文件显示,生活在威尼斯的商人乔瓦尼·比安奇尼(Giovanni Bianchini)在14世纪40年代的记录中使用了一个小数点。历史学家对这一重大发现给予了高度评价,因为它意味着小数点的使用比之前认为的要早150年。比安奇尼是一位敏锐的天文学家,他对自己观测到的天象进行了详细标注,并提供了基于恒星和行星排列计算占星术预测给威尼斯人民。格伦·范·布鲁梅伦博士注意到比安奇尼在1441年至1450年间一篇论文中使用了小数点。如今,小数点已成为我们生活中不可或缺的一部分,并且看起来已经被使用了几千年。历史学家指出,在20世纪90年代,伊斯兰世界就开始采用某种形式上等同于小数点功能的符号。很可能是由于比安奇尼曾去过中东并受到那里学者们影响所致,这些学者在许多数学概念形成方面扮演着关键角色。其他历史证据表明,在12世纪中国知识分子也采用过某种形式上等同于小数点功能的符号。直到1593年才有确切记录显示最早明确使用小数点系统,当时德国数学家克里斯托夫·克拉维斯在其天文研究中应用了该系统。

    Tip

    在windows环境使用git安装nvm

    因公司电脑做了软件安装限制,导致不能使用.exe方式配置nvm工具,但是平时项目开发中,经常需对老项目使用不同的node版本,所以这个工具还是很重要的。确定研究一下有没有其他方式配置nvm,在github上看到有Git Install章节,用法是要git clone项目源码下来,然后配置,但是现在github一直clone不了项目,所以就去gitee上看了一下,发现有这个仓库nvm-cn: 🧊 nvm国内安装工具 (gitee.com),用法很简单,只需要在Git Bash Here上使用以下命令即可安装:

    bash -c "$(curl -fsSL https://gitee.com/RubyMetric/nvm-cn/raw/main/install.sh)"
    • 1

    然后验证一下,使用命令nvm ls,如下所示:

    alt

    使用nvm命令时只能在Git Bash Here上使用,在Windows PowerShellCMD命令窗口是使用不了的。

    指定默认的Node版本,使用一下命令:

    nvm alias default 16.14.2
    • 1

    Share

    技术的发展是永无止境的,脚踏实地才能遥望星空。

    本文由 mdnice 多平台发布

  • 相关阅读:
    gdb: 疑惑1:info symbol为何可以看到atomicity.h的代码,但是代码里确实没有看到相关的代码
    自定义动态数据源
    它把RabbitMQ的复杂全屏蔽了,我朋友用它后被老板一夜提拔为.NET架构师
    自动控制原理6.5---复合校正
    AUTOSAR汽车电子嵌入式编程精讲300篇-基于AUTOSAR架构的AT控制系统研究与实现
    【2022】Python自动化测试,软件测试最全学习路线......
    【小黑送书—第七期】>>程序员To架构师?一起来看架构师系列书籍推荐
    vue中把弹出层.vue文件注册成组件供其他.vue文件调用的写法
    c++ 变量常量指针练习题
    Canvas初级小案例
  • 原文地址:https://blog.csdn.net/BraveheartLeslieJay/article/details/136297749