자료구조&알고리즘/프로그래머스

[프로그래머스] Lv.0 특이한 정렬 python (lambda로 sort)

celinayk 2024. 6. 3. 22:47
반응형
def solution(numlist, n):
    sorted_list = sorted(numlist, key=lambda x: (abs(x - n), -x))
    return sorted_list

 

 

람다함수를 첨 써보는데

lambda 인자 : 표현식

요롷게 표현한다

 

def add(x, y):
    return x + y

이 함수를 람다 함수로 바꾸면 다음과 같이 작성할 수 있다

add = lambda x, y: x + y

 

 

그래서 람다함수를 써서 정렬에 썼다

이 코드는 두개를 정렬하는데 이건 첨알게되었다

(abs(x-n)이 첫번니까 이걸 기준으로 정렬을 하다가 같은 값이 생기면

-x이걸 기준으로 정렬한다 -니까 내림차순으로 정렬을 하는원리다 

 

 

 

파이썬은 대박이다

 

 

 

참고 : https://daeun-computer-uneasy.tistory.com/74

 

[알고리즘] 특정 기준으로 리스트 정렬하기 (python) - key=lambda

요즘 정렬 문제를 많이 풀다보면, 리스트를 특정 기준으로 정렬해야할 때가 많다. 단순히 .sort(), sorted()로의 오름차순 내림차순으로는 풀 수 없는 문제도 많이 만났고, 이럴때는 key=lambda 함수를

daeun-computer-uneasy.tistory.com

 

댓글수1