leetcode--165--比较版本号

题目:
比较两个版本号 version1 和 version2。
如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此之外返回 0。

你可以假设版本字符串非空,并且只包含数字和 . 字符。

. 字符不代表小数点,而是用于分隔数字序列。

例如,2.5 不是“两个半”,也不是“差一半到三”,而是第二版中的第五个小版本。

你可以假设版本号的每一级的默认修订版号为 0。例如,版本号 3.4 的第一级(大版本)和第二级(小版本)修订号分别为 3 和 4。其第三级和第四级修订号均为 0。

链接:https://leetcode-cn.com/problems/compare-version-numbers

思路:
1、分别把version1、version2按照 . 字符分割,然后在两个列表后添加0元素,使其列表长度相同
2、遍历两个列表,判断大小

Python代码:

class Solution(object):
    def compareVersion(self, version1, version2):
        """
        :type version1: str
        :type version2: str
        :rtype: int
        """
        v1_ls = version1.split('.')
        v2_ls = version2.split('.')

        if len(v1_ls)>len(v2_ls):
            v2_ls += [0]*(len(v1_ls)-len(v2_ls))
        else:
            v1_ls += [0]*(len(v2_ls)-len(v1_ls))

        for i in range(len(v1_ls)):
            if int(v1_ls[i])>int(v2_ls[i]):
                return 1
            elif int(v1_ls[i])<int(v2_ls[i]):
                return -1
        return 0
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容