猫猫说了算
理解是偶然,误解是常态。

【算法】165. 比较版本号

远浅发表于: 2021-09-01 10:24分类: 笔记

思路:数组拆分,遍历版本号对比。

leetcode 165

/**
 * @param {string} version1
 * @param {string} version2
 * @return {number}
 * @description
 * 给定两个版本号version1和version2,你需要返回一个整数,代表他们的比较结果。
 * 示例 1:

输入:version1 = "1.01", version2 = "1.001"
输出:0
解释:忽略前导零,"01" 和 "001" 都表示相同的整数 "1"

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/compare-version-numbers
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
 */
var compareVersion = function(version1, version2) {
  // 拆分为数组
  const [v1, v2] = [version1.split("."), version2.split(".")];
  // 选择较大的数组长度
  const len = Math.max(v1.length, v2.length);
  // 循环比较
  for (let index = 0; index < len; index++) {
    // 强转为数字
    const n1 = +(v1[index] || 0);
    const n2 = +(v2[index] || 0);
    if (n1 > n2) return 1;
    if (n1 < n2) return -1;
  }
  return 0;
};

赠人玫瑰, 手有余香。🌹
打赏
特别鸣谢
感谢以下用户对本文的支持与鼓励
加载打赏用户中
发表评论
文章评论
暂无任何评论,快去发表吧~