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

HOU·2022년 6월 15일
0

코딩테스트

목록 보기
14/24
post-thumbnail

🎈문제

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

🎈문제 설명

문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다.

🎈접근 방법

  1. 두 번째 인덱스에 대한 값을 기준으로 정렬이 필요하다.
  2. 1번에 대한 값이 동일할 경우 다음 값을 기준으로 값을 정렬한다.

여기에서 발생한 문제점, 위대로 해결하려고 진행했더니, 1번은 되지만 2번을 sort할 때 다시 정렬이 다시 되어버리는 문제점이 있었다. 이 문제를 해결하기 위해서 어떻게 처리하면 좋을지 모르겠어서 다른 사람의 블로그를 참조해서 문제를 해결하였다.

🎈해결법

나의코드

대실패!!

남의코드

def solution(strings, n):
    # 2번을 먼저 진행한다.
    strings.sort();
    #1번을 진행한다.
    return sorted(strings, key=lambda x:x[n])
    
    return strings

🎈소감

lambdasorted에 대해 공부해야한다.!

profile
하루 한 걸음 성장하는 개발자

0개의 댓글