题解 | #比较版本号#
比较版本号
https://www.nowcoder.com/practice/2b317e02f14247a49ffdbdba315459e7
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 比较版本号
# @param version1 string字符串
# @param version2 string字符串
# @return int整型
#
class Solution:
def compare(self , version1: str, version2: str) -> int:
# write code here
# 将两个版本按照‘.’进行分割,得到对应的列表
v1_list = version1.split('.')
v2_list = version2.split('.')
# 因为如果版本号没有指定某个下标处的修订号,则该修订号视为0
# 则可以给长度小的那个列表添加两个列表长度差值个数的‘0’,组装成长度相等的列表
if len(v1_list) > len(v2_list):
v2_list.extend(['0']*(len(v1_list)-len(v2_list)))
elif len(v1_list) < len(v2_list):
v1_list.extend(['0']*(len(v2_list)-len(v1_list)))
# 依次比对两个列表对应的值的大小,比对前转换为int类型
for i in range(len(v1_list)):
if int(v1_list[i]) > int(v2_list[i]):
return 1
elif int(v1_list[i]) < int(v2_list[i]):
return -1
return 0
#python代码##算法##比较版本号#python 算法 文章被收录于专栏
python算法