티스토리 뷰
알고리즘 문제를 풀다보면 단순히 하나의 값만으로 정렬하는 경우가 아닌, 2개 이상의 값으로 정렬해야하는 경우가 생긴다.
하나의 값으로 정렬하는 경우,
key(정렬 기준 값)을 명시 하지 않거나 또는 하나의 값만을 명시해줌으로써 가능했다.
sorted(data)
# OR data.sort()
sorted(data, key=lambda x: x[0])
# OR data.sort(key=lambda x: x[0])
두개 이상의 값으로 정렬하는 경우,
key 값을 다음과 같이 튜플 형태로 엮어 넣어주면 된다.
data = [[1, 2], [2, 3], [1, 4], [3, 0]]
data = sorted(data, key = lambda x: (x[0], x[1]))
# [[1, 2], [1, 4], [2, 3], [3, 0]]
data = sorted(data, key = lambda x: (x[1], x[0]))
# [[3, 0], [1, 2], [2, 3], [1, 4]]
data = sorted(data, key = lambda x: (-x[0], x[1]))
# [[3, 0], [2, 3], [1, 2], [1, 4]]
data = sorted(data, key = lambda x: (x[0], -x[1]))
# [[1, 4], [1, 2], [2, 3], [3, 0]]
data = sorted(data, key = lambda x: (-x[0], -x[1]))
# [[3, 0], [2, 3], [1, 4], [1, 2]]
320x100
반응형
'Development > Python' 카테고리의 다른 글
[pytest] python 코드를 테스트 해봅시다. (2) | 2021.01.23 |
---|---|
[Python] lambda, map, filter (0) | 2021.01.23 |
필요한 정보를 보내주는 Slack bot을 만들어보자 (0) | 2021.01.22 |
[python] isort (0) | 2019.10.09 |
[python] 파이썬 버전 확인 (0) | 2019.10.08 |
댓글
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Spring
- 일상
- WebFlux
- 로그
- 클린 아키텍처
- Kubernetes
- Intellij
- Clean Architecture
- Istio
- 알고리즘
- 백준
- 하루
- tag
- 비동기
- hexagonal architecture
- docker
- python
- HTTP
- container
- k8s
- gradle
- c++
- java
- Spring boot
- Log
- jasync
- Algorithm
- boj
- 쿠버네티스
- MySQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함