[Programmers] 문자열 내 마음대로 정렬하기

yunan·2020년 9월 6일
1
post-thumbnail

✍️ [Progrmmers] 문자열 문제

🔦 문제 링크

✅ v1은 sort의 key를 사용
✅ v2는 sort의 key없이 해당 인덱스를 직접 참조해 사용
✅ v3는 lambda를 사용해 sorting 조건을 inline으로 정의해줌!

🛠version 1

  • 먼저 전체 요소 소팅 후 특정 인덱스로 소팅

def solution(strings, n):
    def sortkey(x):
        return x[n]
    strings.sort()
    strings.sort(key=sortkey)
    return strings
    

🛠version 2

  • sort의 key를 사용하지 않았을 경우
def solution(strings, n):
    for i in range(len(strings)):
        strings[i] = string[i][n] + strings[i]
    strings.sort() # 이를 통해 두 번의 소팅을 한번에 해결할 수 있다.    
    
    # 앞의 문자를 빼줘야함
    for i in range(len(strings)):
        strings[i] = strings[i][1:]
    return strings

🛠version 3

  • lamda 를 사용한 해결법

def solution(strings, n):
    return sorted( sorted(strings), key=lambda x : x[n])
    
profile
Go Go

0개의 댓글