정구리의 우주정복
[알고리즘 기초] 선택 정렬 (selection sort) 본문
반응형
#소스코드는 공부용으로 만들어본거라 틀릴수있음
## 파이썬
선택정렬이란 ?
주어진 자료중 가장 작은 값의 원소부터 차례대로 선택하여 위치를 교환해 정렬 !
과정:
1. List 중 최소값 찾기
2. 그 값을 List 맨 앞과 교환
3. 처음을 제외한 나머지 대상으로 반복
시간복잡도는 O(n^2) 이다
#선택정렬 : select sort
#주어진 자료중 가장 작은 값의 원소부터 차례대로 선택하여 위치를 교횐하는 방식
#최소값 찾기
#비교비교비교 해서 찾기
arr = [int(x) for x in input().split(' ')]
index = 0
for i in range(len(arr)-1):
mini = arr[i] #최소값
for j in range(i,len(arr)): #최소값 찾기
#print(j)
if arr[j] <= mini:
mini = arr[j]
index = j
print(mini)
#최소값과 index가 구해진 상태
change = arr[i] #바뀔 값을 백업
arr[i] = arr[index]
arr[index] = change
print(arr)
반응형
'ALGORITHM > BASIC' 카테고리의 다른 글
[알고리즘 기초] 백준 2750번 - 수 정렬하기 파이썬 (버블정렬,삽입정렬) (0) | 2020.05.23 |
---|---|
[알고리즘 기초] 브루트포스 (Brute-force) (0) | 2020.05.14 |
[알고리즘 기초] 이진 검색 ( binary search algorithm) (0) | 2020.05.10 |
[알고리즘 기초] 순차 검색 (sequental search) (0) | 2020.05.10 |
[알고리즘 기초] 파이썬 부분집합 알고리즘 (비트연산자) (0) | 2020.05.09 |
Comments