본문 바로가기

Algorithm/프로그래머스

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

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

정답코드

(1) 본인

def solution(strings, n):
    answer = []
    result = []
    for string in strings:
        result.append(string[n] + string)
        
    result.sort()
    for i in range(len(result)):
        answer.append(result[i][1:])
    return answer

 

(2) 다른 사람의 풀이

def strange_sort(strings, n):
    '''strings의 문자열들을 n번째 글자를 기준으로 정렬해서 return하세요'''
    return sorted(strings, key=lambda x: x[n])

strings = ["sun", "bed", "car"] 
print(strange_sort(strings, 1))
람다에 대해서 너무 무지한 것 같다.. 무조건 공부하자!

 

 

 

 

 

[참고]

https://dapsu-startup.tistory.com/entry/Python-%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8-level1-%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%82%B4-%EB%A7%88%EC%9D%8C%EB%8C%80%EB%A1%9C-%EC%A0%95%EB%A0%AC%ED%95%98%EA%B8%B0