题解 | #比较版本号#

比较版本号

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

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 比较版本号
# @param version1 string字符串 
# @param version2 string字符串 
# @return int整型
# 全部变成列表,逐位比对,
class Solution:
    def compare(self , version1: str, version2: str) -> int:
        v1 = list(map(int, version1.split('.')))
        v2 = list(map(int, version2.split('.')))
        for i in range(max(len(v1), len(v2))):
            one = v1[i] if i in range(len(v1)) else 0 #有一方超出下标的情况,两个列表都做校验并设置默认值
            two = v2[i] if i in range(len(v2)) else 0
            if one > two:
                return 1
            elif one < two:
                return -1
        return 0

全部评论

相关推荐

牛客41077653...:想问一下华为池子是不是很大呀
点赞 评论 收藏
分享
05-19 09:12
河南大学 Java
程序员小白条:怎么还用网上的经典项目,速成是很少有人去捞面试的
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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