zoukankan      html  css  js  c++  java
  • [leetcode]Compare Version Numbers

    难度是Easy,开始没考虑那么多,直接撸。。。然后当然错了

    简单的想法,把两个version split成两个num的list,然后再比较。。。

    class Solution:
        # @param a, a string
        # @param b, a string
        # @return a boolean
     
        def compareVersion(self, version1, version2):
            def compareInt(a, b) :
                if (a > b):
                    return 1
                elif (a < b):
                    return -1
                else:
                    return 0
            ver1 = version1.split('.')
            ver2 = version2.split('.')
            num1 = map(lambda x : int(x), ver1)
            num2 = map(lambda x : int(x), ver2)
            if (len(num1) < len(num2)) :
                for i in xrange(0, len(num2) - len(num1)):
                    num1.append(0)
            if (len(num1) > len(num2)) :
                for i in xrange(0, len(num1) - len(num2)):
                    num2.append(0)
            pos = filter(lambda (x, y) : x != y, zip(num1, num2))
            if (len(pos) != 0) :
                return compareInt(pos[0][0], pos[0][1])
            return compareInt(len(num1), len(num2))
  • 相关阅读:
    VC CComboBox用法总结
    WideCharToMultiByte和MultiByteToWideChar函数的用法
    JavaScript
    标题:外星日历
    C语言顺序栈
    C语言循环队列
    每日一题
    标题:李白打酒
    标题:分数
    标题:复数幂
  • 原文地址:https://www.cnblogs.com/x1957/p/4166859.html
Copyright © 2011-2022 走看看