
[Algorithm] 퀵 정렬 (Quick Sort)
·
Programming/Algorithm & Data Structure
Quick Sort분할 정복을 이용한 정렬 알고리즘이다. (값에 따른 비균등 분할)피벗을 정한 뒤 피벗의 위치를 확정해가며 정렬을 수행하는 것이 특징일반적으로 각 부분 배열의 맨 앞 or 뒤를 피벗으로 정하는데, 이는 정렬 과정 동안 유지되어야 한다.피벗이 확정되면 피벗의 앞에는 피벗보다 작은 값, 뒤에는 큰 값이 오게 한다. (오름차순 기준)코드#include void Print(int* arr){ for (int i = 0; i p부터 pivot 한 칸 앞까지 전진 for (int j = p; j 왼쪽/오른쪽에 pivot보다 작은/큰 수로 나뉨 return i;}void QuickSort(int* arr, int p, int r){ if (p QuickSort에서 배열을 분할..