快速排序算法的伪代码怎么写
时间: 2024-09-06 18:08:00 浏览: 47
快速排序是一种常用的排序算法,其基本思想是分而治之,通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,然后分别对这两部分继续进行排序,直到整个序列有序。以下是快速排序的一个简单伪代码实现:
```text
function quickSort(array, low, high):
if low < high:
// 找到分割点
pivotIndex = partition(array, low, high)
// 对左右两侧分别递归调用
quickSort(array, low, pivotIndex - 1) // 排序左侧
quickSort(array, pivotIndex + 1, high) // 排序右侧
function partition(array, low, high):
// 选择数组中的最后一个元素作为基准值(pivot)
pivotValue = array[high]
// 将小于pivot的元素移动到pivot左边
i = low - 1:
if array[j] <= pivotValue:
i++
swap(array[i], array[j]) // 交换元素位置
swap(array[i + 1], array[high]) // 将pivot放到正确的位置
return i + 1
// 交换两个元素的位置
function swap(array, i, j):
temp = array[i]
array[i] = array[j]
array[j] = temp
```
阅读全文