[알고리즘] 정렬 알고리즘1

Joseph's Engineering Blog·2023년 6월 19일
0

알고리즘

목록 보기
5/5
post-thumbnail

정렬(Sort)이란?

데이터값을 크기 순서로 배열하는 것을 정렬이라고 합니다.

정렬 예시 코딩

고객 이름구입액
cat8000
rabbit12000
tiger1000
panda15000
lion4000
fox15000

다음과 같은 고객 명단이 있을 때 구입액이 큰 고객 순으로 정렬하는 코딩을 해보겠습니다.

ani = [["cat", 8000], ["rabbit", 12000], ["tiger", 1000], ["panda", 15000], ["lion", 4000], ["fox", 1000]]

다음과 같이 이중 구조 배열을 만들고 sorted 함수를 사용하면 쉽게 구현할 수 있습니다.

print(sorted(ani, key=lambda x: x[1])

결과를 확인해보면

다음과 같이 정렬되는것을 확인할 수 있습니다.


여기서 tiger와 fox처럼 같은 값을 가질 경우 alphabet 순으로 정렬되게 하려면

print(sorted(ani, key=lambda x: (x[1], x[0])))

다음과 같이 x[0]을 추가하면 해결 할 수 있습니다.

fox, tiger 순으로 변경됨을 확인할 수 있습니다.

마지막으로 숫자를 내림차순으로 변경하려면 sorted에서 reverse=True 옵션을 추가하면 됩니다.

print(sorted(ani, key=lambda x: (x[1], x[0]), reverse = True))

결과를 확인하면

숫자가 내림차순으로 정리되고 같은 값일 경우 알파벳도 순서대로 정렬됨을 확인할 수 있습니다.

profile
Kubernetes / DevOps / Git / Network / AWS / Terraform / Opensource / Java / Springboot

0개의 댓글