시간을 기록하다

블로그 이미지
by 기록자
  • 27,656Total hit
  • 1Today hit
  • 3Yesterday hit

선택 정렬이란 데이터를 정렬하기 위한 방법 중 가장 단순한 방법이라 할 수 있다.
선택 정렬에서는 비교 대상이 되는 위치와 그 이후에 나타난 데이터들의 값을 비교하여 더 작은 데이터와 교체함으로써 정렬을 수행하게 된다.
이해를 돕기 위해 아래 그림을 보도록하자.

사용자 삽입 이미지

그림에서 보면 우선 [0] 번 데이터는 [1]~[n-1]까지의 데이터와 비교해 가면서 [0]번 데이터보다 작은 값이 있을 경우 스왑한다. 그렇게 [n-1]까지의 비교가 끝나면 [0]번에는 [0]~[n-1]의 데이터 중에서 가장 작은 값이 들어가 있게된다. 이후에는 [1] 번 데이터를 [2]~[n-1]까지 같은 방식으로 비교 및 스왑 과정을 거치게 된다.
이와같이 선택 정렬의 경우 비교 횟수가 항상 n(n-1)/2 이므로 상당히 비효율적인 방법이라 할 수 있지만 데이터를 정렬하는 방법에 있어서 가장 기본적인 방법이므로 기본적으로 알고 있어야 하는 방법이다.
아래는 선택정렬의 소스코드이다.

크리에이티브 커먼즈 라이선스
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이선스에 따라 이용하실 수 있습니다.
TRACKBACK 0 AND COMMENT 0

ARTICLE CATEGORY

분류 전체보기 (42)
개발 노트 (1)
초보의 알고리즘 (17)
프로그래밍 팁 (13)
기타 등등등등등 (11)

CALENDAR

«   2012/01   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

ARCHIVE

LINK