728x90 퀵 정렬 알고리즘1 c언어 - 퀵 정렬 (QuickSort) 퀵 정렬은 이름처럼 빠른 정렬이다. 퀵 정렬은 적절한 하나의 기준(피벗)을 잡고 피벗을 기준으로 삼아 값들을 정렬해나간다. 피벗(pivot)을 어떻게 설정하느냐에 따라 정렬 시간에 큰 영향을 준다. 그래서 최악의 경우 O(n^2)의 시간이 걸릴 수 있다. 피벗을 기준으로 작은 값은 왼쪽 큰 값은 오른쪽으로 보내면서 정렬해간다. 정렬할 리스트가 1~0일때 까지 반복하는 정렬이다. 글로 설명하는건 쉬우나 코딩할때 조금 꼬일수있으니 주의하면서 코딩해보자. low, high 을 좌표로 잡고 피벗과 비교하면서 low 는 피벗보다 큰 수를 high 는 피벗보다 작은수를 서로 교환한다. low 와 high가 교차하는 순간 low 와 피벗을 교체한다. 그리고 피벗을 기준으로 -1, +1 한 값을 재귀함수를 이용하여 퀵.. 2020. 12. 25. 이전 1 다음 728x90