문제
풀이
class Solution:
def reorderLogFiles(self, logs: List[str]) -> List[str]:
letter_log = []
digit_log = []
for log in logs:
if log.split()[1].isnumeric():
digit_log.append(log)
else:
letter_log.append(log)
return (
sorted(letter_log, key=lambda x: (x.split()[1:], x.split()[0]))
+ digit_log
)
만일 digit_log
도 함께 정렬하는 문제였다면 아래와 같이 풀이 가능하다.
class Solution:
def reorderLogFiles(self, logs: List[str]) -> List[str]:
def key(log):
splited = log.split()
identifier, content = splited[0], splited[1:]
return (content[0].isnumeric(), content, identifier)
return sorted(logs, key=key)