Custom Sort String LeetCode solution in Python

1
# Runtime: 328 ms (Top 5.22%) | Memory: 13.9 MB (Top 17.87%)
2
class Solution:
3
def customSortString(self, order: str, s: str) -> str:
4
charValue = [0] * 26
5
for i in range(len(order)):
6
idx = ord(order[i]) - ord("a")
7
charValue[idx] = 26 - i
8

9
arrS = []
10
n = 0
11
for c in s:
12
arrS.append(c)
13
n += 1
14

15
sorted = False
16
while not sorted:
17
sorted = True
18
for i in range(n - 1):
19
if (
20
charValue[ord(arrS[i]) - ord("a")]
21
< charValue[ord(arrS[i + 1]) - ord("a")]
22
):
23
sorted = False
24
arrS[i], arrS[i + 1] = arrS[i + 1], arrS[i]
25

26
return "".join(arrS)

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0