제로베이스/알고리즘
Algorithms. 순위
진주네카라
2021. 11. 29. 23:54
728x90
Information
순위는 수를 비교해 차례, 순서, 서열 등을 나타내는 위치이다.
순위
- Ranking
- 복잡한 정보를 평가하는 것이 가능하다.
구현
1
import random
datas = random.sample(range(50, 101), 5)
ranks = [0 for i in range(5)] # 5번 반복해 값을 0으로 초기화
for idx, val1 in enumerate(datas):
for val2 in datas:
if val1 < val2:
ranks[idx] += 1
print(f'점수: {datas}')
print(f'순위: {ranks}')
for idx, val in enumerate(datas):
print(f'점수: {val} \t 순위: {ranks[idx] + 1}')
출력
점수: [78, 66, 54, 60, 93]
순위: [1, 2, 4, 3, 0]
점수: 78 순위: 2
점수: 66 순위: 3
점수: 54 순위: 5
점수: 60 순위: 4
점수: 93 순위: 1
val1, val2를 비교해 더 작은 값을 가지는 인덱스와 같은 ranks에 1을 더한다.
나열된 리스트 순서로 순위를 나타 낼 수 있다.
2
import random
datas = random.sample(range(50, 101), 5)
ranks = [0 for i in range(5)]
nums_sort = datas
nums_sort.sort(reverse=True)
for idx, val in enumerate(nums_sort):
print(f'순위: {idx + 1} \t 점수: {val}')
출력
순위: 1 점수: 93
순위: 2 점수: 78
순위: 3 점수: 66
순위: 4 점수: 60
순위: 5 점수: 54
파이썬 sort 함수를 이용해 내림차순 정렬을 하면
인덱스에 1을 더한 값이 순위가 된다. 더 간단하고 보기쉽게 정리할 수 있다.
728x90