首页 > 其他 > 详细

[leetcode]Compare Version Numbers

时间:2014-12-16 13:07:28      阅读:243      评论:0      收藏:0      [点我收藏+]

难度是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))

 

[leetcode]Compare Version Numbers

原文:http://www.cnblogs.com/x1957/p/4166859.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!