标签(空格分隔): LeetCodepython
做者: 负雪明烛
id: fuxuemingzhu
我的博客: http://fuxuemingzhu.me/git
题目地址:https://leetcode.com/problems/compare-version-numbers/description/ide
Compare two version numbers version1 and version2.
If version1 > version2
return 1
; if version1 < version2
return -1
;otherwise return 0
.spa
You may assume that the version strings are non-empty and contain only digits and the . character.
The . character does not represent a decimal point and is used to separate number sequences.
For instance, 2.5 is not “two and a half” or “half way to version three”, it is the fifth second-level revision of the second first-level revision.code
Example 1:three
Input: version1 = "0.1", version2 = "1.1" Output: -1
Example 2:ip
Input: version1 = "1.0.1", version2 = "1" Output: 1
Example 3:ci
Input: version1 = "7.5.2.4", version2 = "7.5.3" Output: -1
比较两个版本号的大小。leetcode
版本是用.进行分割的,那么咱们也只能经过用.进行分割来断定版本号的大小。把版本号进行分割,须要找出一个较长的版本号的长度,把较短的版本的后面用0进行补齐。恩,而后进行比较。get
class Solution(object): def compareVersion(self, version1, version2): """ :type version1: str :type version2: str :rtype: int """ v1_split = version1.split('.') v2_split = version2.split('.') v1_len, v2_len = len(v1_split), len(v2_split) maxLen = max(v1_len, v2_len) for i in range(maxLen): temp1, temp2 = 0, 0 if i < v1_len: temp1 = int(v1_split[i]) if i < v2_len: temp2 = int(v2_split[i]) if temp1 < temp2: return -1 elif temp1 > temp2: return 1 return 0
2018 年 6 月 26 日 ———— 早睡早起