lamiastella

version number comparison

May 31st, 2016
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.50 KB | None | 0 0
  1. class Solution:
  2.     # @param A : string
  3.     # @param B : string
  4.     # @return an integer
  5.     def compareVersion(self, A, B):
  6.         print(type(A))
  7.         version_list_A = A.split(".")
  8.         version_list_B = B.split(".")
  9.         if A==B:
  10.             return 0
  11.         if len(version_list_A) == len(version_list_B):
  12.             for i in range(len(version_list_A)):
  13.                 if version_list_A[i] == version_list_B:
  14.                     continue
  15.                 elif version_list_A[i] > version_list_B[i]:
  16.                     return 1
  17.                 else:
  18.                     return -1
  19.         #1.13 < 1.13.4
  20.         #7.3 > 1.1.3
  21.         #0.4 < 1.1.3
  22.         if len(version_list_A) < len(version_list_B):
  23.             if version_list_A == version_list_B[:len(version_list_A)-1]:
  24.                 return -1
  25.             else:
  26.                 return self.compareVersion("".join(version_list_A), "".join(version_list_B[:len(version_list_A)-1]))
  27.         # 1.4.6 > 1.4
  28.         if len(version_list_A) > len(version_list_B):
  29.             if version_list_A[:len(version_list_B)-1]==version_list_B:
  30.                 return 1
  31.             else:
  32.                 return self.compareVersion("".join(version_list_A[:len(version_list_B)-1]), "".join(version_list_B))
  33.  
  34.  
  35.  
  36.  
  37. s = Solution()
  38. print(s.compareVersion("1.13.9", "1.13.1"))
  39.  
  40. /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 /Users/mona/PycharmProjects/PythonCodes/compare_version.py
  41. <class 'str'>
  42. -1
  43.  
  44. Process finished with exit code 0
Advertisement
Add Comment
Please, Sign In to add comment