题解 | #比较版本号#

比较版本号

https://www.nowcoder.com/practice/2b317e02f14247a49ffdbdba315459e7

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 比较版本号
 * @param version1 string字符串
 * @param version2 string字符串
 * @return int整型
 */
function compare(version1, version2) {
    // write code here
    let v1 = version1.split(".");
    let v2 = version2.split(".");
    const maxLength = Math.max(v1.length, v2.length);
    const diff = v1.length - v2.length;
    const fill = new Array(Math.abs(diff)).fill(0);
    diff > 0 ? (v2 = v2.concat(fill)) : (v1 = v1.concat(fill));
    for (let i = 0; i < maxLength; i++) {
        if (parseInt(v1[i]) > parseInt(v2[i])) {
            return 1;
        }
        if (parseInt(v1[i]) < parseInt(v2[i])) {
            return -1;
        }
    }
    return 0;
}
module.exports = {
    compare: compare,
};

解题思路:字符串切割成数组,然后填补长度差,再一一比较

#比较版本号#
全部评论

相关推荐

程序员花海:实习太简单了 学历可以的 实习描述应该是先介绍业务 再介绍技术 技术咋推动业务的 做到了啥收益 有没有做实验 实验组和对照组有什么不同 你最后学到了什么 有没有参与处理过线上问题 有没有参与过公司的code review 有没有参与过技术分享 这些都是可以在实习描述中写的 并且实习和项目不一样不会撞车 应该放在最前面 放在教育背景下面 另外项目有点烂大街 可以看下我主页的简历优化案例
点赞 评论 收藏
分享
11-03 18:50
门头沟学院 Java
迷茫的大四🐶:问就是马上到,一周五天,6个月以上,全国可飞
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务