[ALGO] 리트코드 - 로그파일 재정렬

hj·2021년 5월 14일
0

알고리즘

목록 보기
10/35
post-thumbnail

리트코드 - 로그파일 재정렬

람다식

split 함수

  • 문자열을 구분자를 기준으로 문자열을 구분하여 잘라서 리스트로 만들어 준다.
from typing import List

class Solution:
    def reorderLogFiles(self, logs: List[str]) -> List[str]:
        # 문자로 구성된 로그가 숫자보다 앞에 온다.
        # 식별자는 순서에 영향을 끼치지 않지만, 문자가 동일할 경우 식별자 순
        # 숫자로그는 입력 순서대로
        num_tmp = []
        str_tmp = []
        for i in range(len(logs)):
            if logs[i][0] == 'd':
                num_tmp.append(logs[i])
            else:
                str_tmp.append(logs[i])

        str_tmp.sort(key=lambda x: (x.split()[1:], x.split()[0])) 
        # 키는 index 1부터 마지막까지가 우선, 그 다음은 index 0
        return str_tmp + num_tmp

0개의 댓글