-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCompare Version Numbers.py
46 lines (32 loc) · 1.27 KB
/
Compare Version Numbers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# https://leetcode.com/problems/compare-version-numbers/
class Solution:
def splitNumbers(self, versionNumber):
# OBJECTIVE: Split string into a list with "." as delimiter
newList = list()
for c in versionNumber.split("."):
newList.append(int(c))
return newList
def compareVersion(self, version1: str, version2: str) -> int:
# Split string
version1 = self.splitNumbers(version1)
version2 = self.splitNumbers(version2)
# Get length of longest string
maxLength = max(len(version1), len(version2))
# Iterate both lists
for i in range(maxLength):
# Get next digit. If either list ended first, just use 0
if i < len(version1):
v1_num = version1[i]
else:
v1_num = 0
if i < len(version2):
v2_num = version2[i]
else:
v2_num = 0
# Compare both digits
if v1_num > v2_num:
return 1
elif v1_num < v2_num:
return -1
# If condition above wasn't met, return 0
return 0