模板
//左右指针移动
while (left <= right)
{
while (A[left] < pivot)
{
left++;
}
while (A[right] > pivot)
{
right--;
}
if (left <= right)
{
int temp = A[left];
A[left] = A[right];
A[right] = temp;
left++;
right--;
}
}
//合并两个数组
while (left <= mid && right <= end) {
if (A[left] < A[right]) {
temp[index++] = A[left++];
} else {
temp[index++] = A[right++];
}
}
while (left <= mid) {
temp[index++] = A[left++];
}
while (right <= end) {
temp[index++] = A[right++];
}7
Last updated
Was this helpful?