알고리즘-이론
퀵 정렬 : Pivot
이번 포스팅에서는 정렬의 종류 중 하나인 퀵 정렬에 대해서 알아보겠습니다. 대다수의 정렬이 구현된 언어, 프레임워크 등에서 자료구조를 정렬할 때 퀵 정렬 로직을 사용하고 있습니다. 어떠한 이유 때문에 이처럼 선호하는 것일까요? 지금부터 알아보도록 하겠습니다. 1. 퀵 정렬이란? 퀵 정렬 (Quick Sort)은 이름에서도 알 수 있듯이 지금까지 포스팅한 정렬 알고리즘 중 상대적으로 빠른 효율적 정렬 알고리즘입니다. 일반적인 평균 시나리오에서 효율적이며 최악의 시나리오라 할지라도 삽입 정렬, 선택 정렬 등과 유사한 시간 복잡도를 가지고 있습니다. 2. 핵심 개념 : 분할 (Partition) 퀵 정렬에서 배열을 분할 한다는 것은 배열에서 임의의 수 (pivot)을 선택한 후 pivot보다 작은 것은 왼쪽,..
2023. 3. 18. 01:57