Step 1: Understand QuickSort behavior.
QuickSort chooses a pivot and partitions the array into two parts.
If pivot position is \( k \), then recursive calls are:
\[
T(k) \quad \text{and} \quad T(n-k-1).
\]
Step 2: Consider average case.
In average case, pivot can appear at any position from \( 0 \) to \( n-1 \) with equal probability.
Therefore, we take the expected value over all possible splits:
\[
\frac{1}{n} \sum_{k=0}^{n-1} \left[ T(k) + T(n-k-1) \right].
\]
Step 3: Add partition cost.
Partitioning takes linear time:
\[
O(n).
\]
Thus, average case recurrence becomes:
\[
T(n) = \frac{1}{n} \sum_{k=0}^{n-1} \left[ T(k) + T(n-k-1) \right] + O(n).
\]
Step 4: Compare options.
(A) Represents a specific split (not average).
(B) Represents Merge Sort.
(C) Matches expected recurrence for QuickSort.
(D) Represents worst case when pivot is smallest/largest.
Hence, option (C) is correct.