首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Leetcode No.165 比较版本号

一、题目描述 给你两个版本号 version1 和 version2 ,请你比较它们。 版本号由一个或多个修订号组成,各修订号由一个 '.' 连接。每个修订号由 多位数字 组成,可能包含 前导零 。...每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。...比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。...version1 和 version2 都是 有效版本号 version1 和 version2 的所有修订号都可以存储在 32 位整数 中 二、解题思路 我们可以将版本号按照点号分割成修订号,然后从左到右比较两个版本号的相同下标的修订号...在比较修订号时,需要将字符串转换成整数进行比较。注意根据题目要求,如果版本号不存在某个下标处的修订号,则该修订号视为 0。

27120

leetcode-165-比较版本号

题目描述: 比较两个版本号 version1 和 version2。...这个符号,这两个字符串作为版本号,要求判断哪个版本号更大。 如果第一个大于第二个,那么返回1。如果第一个小于第二个,那么返回-1。如果相等返回0。...接着逐个比较list中的元素,得到结论。 但是这道题笔者还是选择了c++来做,思路也是类似的,切分出多个字符串,转成数字,比较数字大小。...③1.1.0.1和1.1,那么第三个数字为0,继续比较下去,第四个数字为1>0,那么返回1。 如果是第三种情况,同样有多个例子,跟第二种情况类似。...,那么这时候必然两个字符串的版本号相等 } 上述代码实测0ms,beats 100.00% of cpp submissions。

1K20

比较版本号

题目 给你两个版本号 version1 和 version2 ,请你比较它们。 版本号由一个或多个修订号组成,各修订号由一个 '.' 连接。每个修订号由 多位数字 组成,可能包含 前导零 。...每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。...比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。...如果版本号没有指定某个下标处的修订号,则该修订号视为 0 。例如,版本 1.0 小于版本 1.1 ,因为它们下标为 0 的修订号相同,而下标为 1 的修订号分别为 0 和 1 ,0 < 1 。...version1 和 version2 都是 有效版本号 version1 和 version2 的所有修订号都可以存储在 32 位整数 中 解题思路 class Solution: def

50010

比较版本号

题目 给你两个版本号 version1 和 version2 ,请你比较它们。 版本号由一个或多个修订号组成,各修订号由一个 '.' 连接。每个修订号由 多位数字 组成,可能包含 前导零 。...每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。...比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。...如果版本号没有指定某个下标处的修订号,则该修订号视为 0 。例如,版本 1.0 小于版本 1.1 ,因为它们下标为 0 的修订号相同,而下标为 1 的修订号分别为 0 和 1 ,0 < 1 。...<= version1.length, version2.length <= 500 version1 和 version2 仅包含数字和 '.' version1 和 version2 都是 有效版本号

38830

java:版本号比较(compare version string)

java中如何实现两个版本号(如5.7 vs 5.7.36)怎么比较大小? 百度上用java 比较版本号关键字搜索了一下都找到的文章都要自己写代码做字符串分割,分段比较。。。好麻烦。...org.apache.maven:maven-artifact:3.2.5库中的 org.apache.maven.artifact.versioning.DefaultArtifactVersion,比较版本号就变得很简单...unsupported"); } 下面是我基于org.apache.maven.artifact.versioning.DefaultArtifactVersion实现的用于JDBC检查数据库类型和版本号的方法...metaData * @param requiredProductName 要求的数据库名,such as 'MySQL' * @param requiredMinVersion 要求的数据最低版本号...,such as '5.7.36' * @param requiredMaxVersion 要求的数据最高版本号,为{@code null}或空忽略 * @throws SQLException

2.6K30

js 实现版本号排序

// 方法一:从左到右迭代,从高位判断,返回高位的大小结果 注意:仅适用于版本号各个位的位数相同 let versions = ["1.45.0", "1.5", "6", "2.3.4.5"]; versions...} }) console.log(versions); //[ '1.5', '1.45.0', '2.3.4.5', '6' ] // 方法二:全部转为小数,比小数的大小,注意:仅适用于版本号各个位的位数相同..., '1.0', '3.1.4.512' ] 参考链接:https://blog.csdn.net/jiong9412/article/details/124776279 // 方法三,通过 点 将版本号分割为数组...,如果版本号长度不同,则填入 0,分别比较每一位的大小,可以准确判断每一位的大小 let compareVersion = function (v1, v2) { // console.log(...) if (typeof v1 === "undefined" || typeof v2 === "undefined") { console.error('请指定要对比的两个版本号

1.3K20

比较版本号 算法解析

一、题目 1、算法题目 “给定两个版本号,进行比较。” 题目链接: 来源:力扣(LeetCode) 链接: 165....比较版本号 2、题目描述 给你两个版本号 version1 和 version2 ,请你比较它们。 版本号由一个或多个修订号组成,各修订号由一个 '.' 连接。...比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。...0 < 1,所以 version1 < version2 二、解题 1、思路分析 这道题可以将版本号根据点号分割成修订号,然后从左到右去比较版本号相同下标的修订号。...在比较修订号的时候,需要将字符串转换成整数进行比较

25710

前端工程化必备,语义化版本号扫盲,支持任意版本号位数的比较方法

因为最近在做 Node 相关的项目,涉及到版本号的处理,根据版本号大小做升级 js 处理的,而因为多加了一位数,导致线上的 js 不能升级。 所以只能重写一个支持任意位数的版本号对比方法。...语义化版本号 一般语义化版本号通常定义是这样的: js 代码: Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number...比较方法 这样我们可以做版本号比较,这里提供一个我们项目中使用的方法,支持任意版本号位数的比较哦,比如 3 位的、4 位的。....子版本号 [.修正版本号 [.编译版本号 ]] 之所以支持任意版本号位数的比较,是因为版本号都是递增的,而以下的方法是从左到右,一位一位的比较的。...js 代码: /** * 版本比较 VersionCompare * @param {String} curVersion 当前版本 * @param {String} supportVersion

54510
领券