리스트 2차원 배열 정렬

1차원 배열

  • 오름차순 정렬
  • arr = [2,3,4,5,1]
    arr.sort()
    print(arr)
    # [1,2,3,4,5]
  • 내림차순 정렬
  • arr = [2,3,4,5,1]
    arr.sort(reverse=True)
    print(arr)
    # [5,4,3,2,1]

2차원 배열 – 특정 열 기준으로 정렬

  • 1열 기준으로 오름차순 정렬
  • arr = [[2,3],[1,2],[0,4]]
    arr.sort(key=lambda x:x[0]) # 첫번째 열 기준으로 정렬
    print(arr)
    # [[0, 4], [1, 2], [2, 3]]
  • 1열 기준 내림차순 정렬
  • arr = [[2,3],[1,2],[0,4]]
    arr.sort(key=lambda x: -x[0])
    print(arr)
    # [[2, 3], [1, 2], [0, 4]]
  • 2열 기준 오름차순 정렬
  • arr = [[2,3],[1,2],[0,4]]
    arr.sort(key=lambda x:x[1])
    print(arr)
    # [[1, 2], [2, 3], [0, 4]]
  • 2열 기준 내림차순 정렬
  • arr = [[2,3],[1,2],[0,4]]
    arr.sort(key=lambda x:-x[1])
    print(arr)
    # [[0, 4], [2, 3], [1, 2]]
  • 2열 기준 오름차순 정렬시 값이 같은 것들끼리는 1열 기준으로 오름차순 정렬
  • arr = [[2, 3], [1, 2], [0, 4], [2, 2]]
    arr.sort(key=lambda x: (x[1], x[0]))
    print(arr)
    # [[1, 2], [2, 2], [2, 3], [0, 4]]

참고문헌 : https://asxpyn.tistory.com/75

1 thought on “리스트 2차원 배열 정렬”

Leave a Comment