4926. 快速排序的分区算法
时间限制:1000 MS 内存限制:256 MB
题目描述
### 快速排序的分区算法(Partition) 快速排序的核心是**分区算法(Partition)**,它将数组划分为两个子数组,使得左子数组的所有元素小于等于某个枢轴(pivot),右子数组的所有元素大于等于该枢轴。分区完成后,输出划分后的数组,并用 `[ ]` 标记枢轴。 --- ## 输入格式 第一行给出一个整数 $ n $,表示序列中元素的个数。 第二行给出 $ n $ 个整数 $ A[1], A[2], \dots, A[n] $,表示待处理的序列,以空格分隔。 --- ## 输出格式 输出一行,表示分区后的数组。相邻元素之间用空格分隔,枢轴元素用 `[ ]` 包裹。 --- ## 数据范围 - $ 1 \leq n \leq 100,000 $ - $ 0 \leq A[i] \leq 100,000 $ --- ## 输入 ```in1 12 13 19 9 5 12 8 7 4 21 2 6 11 ``` ## 输出 ```out1 9 5 8 7 4 2 6 [11] 21 13 19 12 ```