자료구조 & 알고리즘 (정렬)
2023. 7. 19. 14:59ㆍ자바스크립트 정리
728x90
정렬
요소들을 일정한 순서대로 열거하는 알고리즘
정렬의 특징
▶ 정렬 기준은 사용자가 정할 수 있다.
▶ 크게 비교식과 분산식 정렬로 나눌 수 있다.
▶ 대부분의 언어가 빌트인으로 제공해준다.
▶ 삽입, 선택, 버블, 머지, 힙, 퀵 정렬 등 다양한 정렬 방식이 존재한다.
비교식 정렬
버블정렬
서로 인접한 두 요소를 검사하여 정렬하는 알고리즘
0(n2)시간복잡도를 가진다.
선택 정렬
선택한 요소와 가장 우선순위가 높은 요소를 교환하는 정렬 알고리즘
0(n2) 시간복잡도를 가진다.
삽입 정렬
선택한 요소를 삽입 할 수 있는 위치를 찾아 삽입하는 방식의 정렬 알고리즘
0(n2)시간복잡도를 가진다.
분산식 정렬
분할 정복
문제를 작은 2개의 문제로 분리하고 더 이상 분리가 불가능 할 때 처리한 후 합치는 전략
다양한 알고리즘에 응용된다.
합병 정렬
분할 정복 알고리즘을 이용한 최선과 최악이 같은 안정적인 정렬 알고리즘
0(n log n)시간복잡도를 가진다.
퀵 정렬
분할 정복 알고리즘을 이용한 매우 빠르지만 최악의 경우가 존재하는 불안정 정렬
0(n log n) 시간복잡도를 가진다.
Sort
'자바스크립트 정리' 카테고리의 다른 글
자료구조 & 알고리즘(너비 우선 탐색, 깊이 우선 탐색) (0) | 2023.07.20 |
---|---|
자료구조 & 알고리즘 (이진 탐색) (0) | 2023.07.19 |
자료구조 & 알고리즘 (트라이) (0) | 2023.07.19 |
자료구조 & 알고리즘 (힙 - Heap) (0) | 2023.07.19 |
자료구조 & 알고리즘 (트리) (0) | 2023.07.19 |