https://www.acmicpc.net/problem/2750
2750행: 숫자 정렬
첫 번째 줄은 숫자 N을 제공합니다(1 ≤ N ≤ 1,000). 번호는 두 번째 줄부터 시작하여 N줄로 제공됩니다.
숫자는 절대값이 1,000보다 작거나 같은 정수입니다.
숫자가 겹치지 않습니다.
www.acmicpc.net
## 수 정렬하기
import sys
input = sys.stdin.readline
n = int(input())
arr = ()
for _ in range(n):
arr.append(int(input()))
## 내장함수 sort 이용
"""arr.sort()"""
## 버블정렬
"""for i in range(len(arr) - 1):
for j in range(len(arr) - 1 - i):
if (arr(j) > arr(j + 1)):
arr(j), arr(j + 1) = arr(j + 1), arr(j)"""
## 삽입정렬
"""for end in range(1, len(arr)):
i = end
while (i > 0) and (arr(i - 1) > arr(i)):
arr(i - 1), arr(i) = arr(i), arr(i - 1)
i -= 1"""
## 선택정렬
for i in range(len(arr) - 1):
min_idx = i
for j in range(i + 1, len(arr)):
if arr(min_idx) > arr(j):
min_idx = j
arr(i), arr(min_idx) = arr(min_idx), arr(i)
print(*arr, sep = '\n')
각서
— 구현하기 쉬운 정렬 알고리즘으로 해결
!
!
다양한 순열을 공부하세요!
!