排序算法随机产生n个数,用快速函数实现排序算法
时间: 2023-06-02 14:03:43 浏览: 90
好的,关于排序算法,快速排序是一种快速且高效的算法。它的基本思想是通过递归将待排序的数列分割成小的子数列,然后再分别对这些子数列进行排序,最终通过将排序好的子数列进行合并,得到一个完全排序好的数列。因此,快速排序的时间复杂度为O(nlogn)。
以下是用C++语言实现的快排代码:
```C++
#include<iostream>
using namespace std;
void quick_sort(int a[], int low, int high)
{
if(low >= high)
return;
int l = low, r = high, pivot = a[l];
while(l < r)
{
while(l < r && a[r] >= pivot)
r--;
if(l < r)
a[l] = a[r];
while(l < r && a[l] < pivot)
l++;
if(l < r)
a[r] = a[l];
}
a[l] = pivot;
quick_sort(a, low, l-1);
quick_sort(a, l+1, high);
}
int main()
{
int n;
cout << "请输入需要排序的随机数的个数:" << endl;
cin >> n;
int a[n];
cout << "请输入需要排序的随机数:" << endl;
for(int i = 0; i < n; i++)
{
cin >> a[i];
}
quick_sort(a, 0, n-1);
cout << "排序后的结果为:" << endl;
for(int i = 0; i < n; i++)
{
cout << a[i] << " ";
}
cout << endl;
return 0;
}
```
希望对您有所帮助。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)