본문 바로가기

알고리즘&자료구조

정렬 알고리즘(1)

728x90

정렬(sorting) 

  • 오름차순(ascending order)
  • 내림차순(descending order)
  • 정렬 알고리즘의 핵심은 교환 · 선택 · 삽입

 

버블정렬 (단순 교환 정렬)

: 이웃한 두 원소의 대소관계를 비교하여 필요에 따라 교환을 반복하는 알고리즘.

a[j-1], a[j] = a[j], a[j-1]

 

셰이커정렬 (양방향 버블 정렬)

: 홀수 패스에서는 가장 작은 원소를 맨 앞으로 이동시키고, 짝수 패스에서는 가장 큰 원소를 맨 뒤로 이동. 

 

 

단순 선택 정렬(straight selection sort)

: 가장 작은 원소부터 선택해 알맞은 위치로 옮기는 작업을 반복하며 정렬하는 알고리즘.

a[i], a[min] = a[min], a[i]

 

단순 삽입 정렬(straight insertion sort) 

: 주목한 원소보다 더 앞쪽에서 알맞은 위치로 삽입하며 정렬하는 알고리즘.