알고리즘
[algorithm] leetcode 937 - Reorder Data in Log Files (파이썬)
hyuuny
2022. 3. 11. 10:24
문제
로그를 재정렬하라. 기준은 아래와 같다.
- 로그의 가장 앞 부분은 식별자다.
- 문자로 구성된 로그가 숫자 로그보다 앞에 온다.
- 식별자는순서에 영향을끼치지 않지만,문자가동일할경우식별자순으로한다.
- 숫자 로그는 입력 순서대로 한다.
leetcode 937 - Reorder Data in Log Files
코드
class Solution:
def reorderLogFiles(self, logs: List[str]) -> List[str]:
letters, digits = [], []
for log in logs:
if log.split()[1].isdigit():
digits.append(log)
else:
letters.append(log)
# 2개의 키를 람다 표현식으로 정렬하자
letters.sort(key=lambda x: (x.split()[1:], x.split()[0]))
return letters + digits