C++实现快速排序算法
快速排序是一种高效的排序算法,它的基本思想是通过划分把待排序序列分成两个子序列,再递归地对子序列进行排序,直到整个序列有序为止。在实际应用中,快速排序常常比冒泡排序、插入排序等算法更快、更节省空间。
以下是C++语言实现快速排序算法的代码:
#include <iostream>
#include <vector>
using namespace std;
void quickSort(vector<int>& nums, int left, int right) {
if (left >= right) return;
int i = left, j = right, pivot = nums[left];
while (i < j) {
while (i < j && nums[j] >= pivot) j--;
nums[i] = nums[j];
while (i < j && nums[i] <= pivot) i++;
nums[j] = nums[i];
}
nums[i] = pivot;
quickSort(nums, left, i - 1);
quickSort(nums, i + 1, right);
}
int main() {
vector<int> nums = {5, 2, 3, 1, 4};
quickSort(nums, 0, nums.size() - 1);
for (int
本文介绍了C++实现快速排序算法的详细过程,包括基本思想和代码实现。通过使用vector容器,配合quickSort()函数,实现了对数字序列的划分和递归排序,最终展示了一个从5、2、3、1、4排序到1 2 3 4 5的例子,突显快速排序在效率和空间占用上的优势。
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



