Implementation (Part 1)
Coddy의 퀵 정렬 - DSA 시리즈 코스 레슨 — 9개 중 5번째.
우리는 퀵 정렬을 핵심 동작부터 차근차근 구현해 볼 것입니다.
챌린지
쉬움퀵 정렬(Quick Sort)의 핵심은 partition 단계입니다. 이것을 먼저 구현해 봅시다.
arr의 마지막 요소를 피벗(pivot)으로 사용하고, 다음을 포함하는 새 배열을 반환하는 partition이라는 함수를 작성하세요:
- 피벗보다 작은 모든 요소(원래 순서대로),
- 그 다음 피벗,
- 그 다음 나머지 모든 요소, 즉 피벗보다 크거나 같은 요소(원래 순서대로).
예를 들어, [3, 7, 1, 8, 5]는 [3, 1, 5, 7, 8]이 됩니다 (피벗 5).
직접 해보기
#include <stdlib.h>
int* partition(int* arr, int arr_size, int* returnSize) {
// 여기에 코드를 작성하세요
*returnSize = arr_size;
return arr;
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
퀵 정렬 - DSA 시리즈의 모든 레슨
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)