백준 문제를 풀다가 2차원 배열을 정렬하는 것이 아직 익숙하지 않아 정리하게 되었다. :)
arr = [[2,3],[1,2],[0,4]]
arr.sort()
print(arr)
#[[0, 4], [1, 2], [2, 3]] -> 각 첫번째 원소 기준으로 오름차순 정렬
1) 오름차순
arr = [[2,3],[1,2],[0,4]]
arr.sort(key=lambda x:x[0]) #lambda를 사용하여 key인 x를 설정해준다.
print(arr)
# [[0, 4], [1, 2], [2, 3]]
2) 내림차순
arr = [[2,3],[1,2],[0,4]]
arr.sort(key=lambda x:-x[0]) #- 를 붙여주면 내림차순으로 정렬된다.
print(arr)
# [[2, 3], [1, 2], [0, 4]]
1) 오름차순
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]]
✅ 만약, 열 기준으로 값이 같은 경우에는 행 기준으로 오름차순을 정렬할 수도 있다.
arr = [[2,3],[1,2],[0,4],[2,4]]
arr.sort(key=lambda x:(x[1],x[0]))
print(arr)
# [[1, 2], [2, 3], [0, 4], [2, 4]]