• 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 多平台发布

  • 相关阅读:
    做室内装修设计需要什么资质,办理装修设计资质办理标准是怎样的
    Spring事务与MyBatis事务的集成:通过ThreadLocal实现绑定
    前端优化方案--改善 JS 性能
    git pull
    【用四道刁钻例题带你理解】数据在内存中存储的方式
    Spark DAG及内存迭代计算
    vue3 路由新玩法useRoute 和useRouter
    【论文阅读】基于人工智能目标检测与跟踪技术的过冷流沸腾气泡特征提取
    python--由wrfouput的数据计算位势涡度,并插值到指定压力层
    C++面向对象编程题 第13题
  • 原文地址:https://blog.csdn.net/BraveheartLeslieJay/article/details/136297749