상세 컨텐츠

본문 제목

[정렬] 버블 정렬, 선택 정렬, 삽입 정렬, 병합 정렬, 퀵 정렬

알고리즘

by bigshotlisa 2020. 9. 14. 17:26

본문

버블 정렬: 오른쪽부터 왼쪽 방향으로 인접한 두 개의 숫자를 비교해서 교환하는 작업 반복 

 

선택 정렬: 수열 중에서 최솟값을 검색해서 왼쪽 끝에 있는 숫자와 교체하는 작업 반복, 수열 중에서 최솟값을 찾을 때는 선형 탐색 사용 

 

삽입 정렬: 수열의 왼쪽부터 순서대로 정렬하는 방식, 각 라운드의 첫 숫자를 그 왼쪽에 있는 숫자와 비교 

 

힙 정렬: 힙 구조 이용, 버블, 선택, 삽입 정렬의 계산 시간에 비해 빠른 속도, 단, 힙이라는 복잡한 데이터 구조를 구현하는 것이 어려움 

 

병합 정렬: 정렬하고 싶은 수열을 두 개의 수열로 분할, 더 이상 분할되지 않는 상태에 이르면 그룹들을 병합(머지)해 나감, 병합할 때에는 정렬이 끝난 두 개의 수열을 병합해서 정렬이 끝난 하나의 수열로 만듦 (재귀를 사용한 분할병합법)

 

퀵 정렬: 기준이 되는 수(피봇)을 수열 안에서 임의로 하나를 선택한 후

피복 보다 작은 수 < 피봇 < 피봇 이상인 수 순으로 정렬 (재귀를 사용한 분할병합법)

728x90

'알고리즘' 카테고리의 다른 글

[그래프 탐색] 너비 우선 탐색, 깊이 우선 탐색  (0) 2020.09.15

관련글 더보기

댓글 영역