题目描述
比较两个版本号 version1 和 version2。
如果 *version1* > *version2*
返回 1
,如果 *version1* < *version2*
返回 -1
, 除此之外返回 0
。
你可以假设版本字符串非空,并且只包含数字和 .
字符。
.
字符不代表小数点,而是用于分隔数字序列。
例如,2.5
不是“两个半”,也不是“差一半到三”,而是第二版中的第五个小版本。
示例 1:
1 | 输入: version1 = "0.1", version2 = "1.1" |
示例 2:
1 | 输入: version1 = "1.0.1", version2 = "1" |
示例 3:
1 | 输入: version1 = "7.5.2.4", version2 = "7.5.3" |
解题思路
本题主要思路就是依次比较版本号的每一位的值,注意题目的特殊性,小版号可能会存在01
类似的情况,需要注意将数值转为int类型。然后是小心边界条件,比如版本号为 1.0.0
与 1
是同版本的。
代码实现
1 | class Solution(object): |