반응형
파이썬 선택정렬 selection sort
# 파이썬 선택정렬
# 예) n = 4
# a = 3 1 4 2 입력
# 1) 1 3 4 2 / 1 과 3 자리 바꿈
# 2) 1 2 4 3 / 2 와 3 자리 바꿈
# 3) 1 2 3 4 / 3 와 4 자리 바꿈
n = int(input()) # 리스트 개수 입력
a = [] * n # n 개수만큼 리스트 생성
for i in range(0, n): # n = 4
a.append(int(input()))# a = 3 1 4 2 입력
for i in range(0, n - 1):
m = i # i = 0 1 2 으로 출력
for j in range(i + 1, n):
# j = 1 2 3 , 2 3 , 3 으로 출력
if a[j] < a[m]:
m = j # m = 1 3 3 으로 출력
a[i], a[m] = a[m], a[i]
# 맨 위 1) ~ 3) 순서로 숫자가 바뀜
# 1) 1 3 4 2 / 1 과 3 자리 바꿈
# 2) 1 2 4 3 / 2 와 3 자리 바꿈
# 3) 1 2 3 4 / 3 와 4 자리 바꿈
print(a)
# [1, 2, 3, 4] 으로 출력
#######################
# 아래는 위 설명 지운 코드
n = int(input())
a = [] * n
for i in range(0, n):
a.append(int(input()))
for i in range(0, n - 1):
m = i
for j in range(i + 1, n):
if a[j] < a[m]:
m = j
a[i], a[m] = a[m], a[i]
print(a)
|
cs |
반응형
'파이썬 > 알고리즘' 카테고리의 다른 글
파이썬 삽입정렬 insertion sort (0) | 2022.08.01 |
---|---|
파이썬 버블정렬 bubble sort (0) | 2021.10.30 |
댓글