15 lines
411 B
Python
15 lines
411 B
Python
def ver_val(s):
|
|
s = s.split(".")
|
|
length = len(s)
|
|
s += ['0']*(3-length) # Outer pad array right zeros.
|
|
s = ['0'*(3-len(x)) + x for x in s] # Inner pad string left zeros
|
|
s += [str(length)] # Take length into consideration, less is better.
|
|
return ''.join(s)
|
|
|
|
|
|
def solution(l):
|
|
d = dict()
|
|
for version in l: d[version] = ver_val(version)
|
|
l.sort(key=lambda x: d[x])
|
|
return l
|