LeetCode937 - Reorder Data in Log Files

문이월·2022년 7월 26일

Algorithm

목록 보기
3/11

leetcode 937

요구 조건을 깔끔하게 처리할 수 있는지 묻는 문제.

isdigit() 함수로 숫자인지 판별 가능.

sort(), sorted() 함수는 key값, reverse 유무를 지정해서 정렬방식을 정할 수 있다.

lambda 표현식을 통해 식별자나 함수 선언 없이 하나의 식으로 함수를 단순하게 표현할 수 있다. map이나 fileter와 함께 섞어서 사용하면 가독성이 떨어질 수 있다.

class Solution:
    def reorderLogFiles(self, logs):
        letters = []
        digits = []
        
        for log in logs:
            if log.split()[1].isdigit():
                digits.append(log)
            else:
                letters.append(log)
                
        letters.sort(key = lambda x: (x.split()[1], x.split()[0]))
        
        return letters + digits
profile
ㅋㅅㅋ

0개의 댓글