[프로그래머스] 문자열 내 마음대로 정렬하기

YEAh·2021년 4월 20일
0
post-thumbnail

🔗 문제 링크

https://programmers.co.kr/learn/courses/30/lessons/12915


💻 코드

def solution(strings, n):
    answer = []

    def setting(data):
        return data[n]
    
    answer = sorted(strings)
    answer = sorted(answer, key=setting)

    return answer

인덱스 n의 문자가 같은 문자열이 여럿일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치해야 하므로 먼저 사전순으로 정렬하고 인덱스 n번째 글자를 기준으로 오름차순 정렬하였다.


📝 정리

  • 람다식을 사용하여 정렬 기준 설정
def solution(strings, n):
    answer = []
    
    answer = sorted(strings)
    answer = sorted(answer, key=lambda x:x[n])

    return answer
  • 정렬 기준이 여러 개일 경우
    ex) key=lambda x:(x[0], -x[1]) / -를 붙이면 현재 정렬차순의 반대로 정렬
profile
End up being.

0개의 댓글