[알고리즘] 선택정렬

박원균·2021년 12월 4일
0

알고리즘

목록 보기
1/11
post-thumbnail

정의

선택하여 정렬하는 알고리즘

정렬방법

최소값 선택 정렬

가장 작은 값을 선택 - 오름차순

순서
1. 정렬되지 않은 숫자 중에 가장 작은 숫자를 선택한다.
2. 선택한 숫자를 정렬되지 않은 숫자들 중에 첫 번째 숫자와 자리를 바꾸면 선택된 숫자는 정렬된
것이다.
3. 모든 숫자를 옮길 때까지 1-2 번 과정을 반복

#선택정렬

numbers = [5,4,2,1,3]


for i in range(len(numbers)):
    for j in range(i+1,len(numbers)):
        if numbers[i] >= numbers[j]:
            numbers[i],numbers[j] = numbers[j],numbers[i]

print(numbers)

최대값 선택 정렬

가장 큰 값을 선택 - 내림차순

성능분석

최선/최악 수행시간: O(n2)O(n^2)
최선/최악 공간: O(n)O(n)

주어진 숫자를 2개씩 짝지어 계산을 하는 방식이므로 . nC2{n}C_{2}를 사용

profile
함바라기

0개의 댓글

관련 채용 정보