Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 프로그램의 선택 정렬

<시간/>

이 기사에서 우리는 선택 정렬과 Python 3.x에서의 구현에 대해 배울 것입니다. 또는 그 이전.

선택 정렬에서 알고리즘에서 배열은 정렬되지 않은 부분에서 최소 요소를 재귀적으로 찾아 처음에 삽입하여 정렬됩니다. 주어진 배열에서 선택 정렬을 실행하는 동안 두 개의 하위 배열이 형성됩니다.

  • 이미 정렬된 하위 배열입니다.
  • 정렬되지 않은 하위 배열입니다.

선택 정렬을 반복할 때마다 정렬되지 않은 하위 배열의 최소 요소가 팝되어 정렬된 하위 배열에 삽입됩니다.

알고리즘의 시각적 표현을 보자 -

Python 프로그램의 선택 정렬

이제 알고리즘의 구현을 봅시다 -

예시

A = ['t','u','t','o','r','i','a','l']
for i in range(len(A)):
   min_= i
   for j in range(i+1, len(A)):
      if A[min_] > A[j]:
         min_ = j
   #swap
   A[i], A[min_] = A[min_], A[i]
# main
for i in range(len(A)):
   print(A[i])

출력

a
i
l
o
r
t
t
u

여기에서 알고리즘의 출력을 오름차순으로 받았습니다. Min_은 다른 모든 값과 비교되는 현재 값입니다. 알고리즘의 분석 매개변수는 다음과 같습니다. -

시간 복잡성 - O(n^2)

보조 공간 - O(1)

여기서 모든 변수는 아래 이미지와 같이 전역 프레임에서 선언됩니다. 결론 -

Python 프로그램의 선택 정렬

결론

이 기사에서 우리는 선택 정렬과 Python 3.x에서의 구현에 대해 배웠습니다. 또는 그 이전.