본문 바로가기
파이썬/알고리즘

파이썬 선택정렬 selection sort

by artra 2022. 5. 26.
반응형

파이썬 선택정렬 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 자리 바꿈
 
= int(input())  # 리스트 개수 입력
= [] * 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] 으로 출력
 
####################### 
# 아래는 위 설명 지운 코드
 
= int(input())
= [] * 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

댓글