ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬의 정렬 라이브러리
    Algorithms in Python/notes 2021. 1. 20. 15:37

    파이썬의 정렬 라이브러리

    sort()

    기본 정렬 라이브러리 sort() 함수를 제공한다.

    sort() : 병합정렬 기반으로, 퀵 정렬보단 느리지만 O(nlogn)을 보장한다.

     

    list.sort() : 리스트 내에서 정렬한다. (여기서 list는 직접 수정이 가능하다.)

    sorted(list) : 새로운 정렬 리스트를 생성한다. (여기서 list는 튜플, 딕셔너리, 문자열 등이다.)

     

    reverse

    리스트 뒤집기

    # 내림차순
    arr.sort(reverse=True)
    *sorted(arr, reverse=True)

     

    key, lambda

    s = ['가', '나다', '라', '마바아자', '차카파']
    s.sort(key=len) # len에 따라 정렬
    print(*sorted(arr, key=lambda x:(-x))	# 내림차순
    # 1. 인덱스 1의 원소가 감소하는 순서
    # 2. 위가 같으면 인덱스 2의 원소가 증가하는 순서
    # 3. 위가 같으면 인덱스 3의 원소가 감소하는 순서
    # 4. 위가 같으면 인덱스 0의 원소가 증가하는 순서로 정렬
    arr.sort(key=lambda x:(-x[1], x[2], -x[3], x[0]))

    'Algorithms in Python > notes' 카테고리의 다른 글

    Union-Find 알고리즘  (0) 2021.02.07
    DFS / BFS  (0) 2021.01.29
    이진 탐색, bisect 라이브러리  (0) 2021.01.21
    정렬  (0) 2021.01.20
    다이나믹 프로그래밍  (0) 2021.01.13

    댓글

Designed by Tistory.