为什么3个tle呀
查看原帖
为什么3个tle呀
1183325
Xiao_lanlan楼主2024/6/7 20:44
#include <bits/stdc++.h>
using namespace std;
int a[100005];
void quick_sort(int l, int r)//快速排序
{
//每次选一个数,以它为界划分左右区间并像归并一样返回
    if (l< r)//边界
    {     
        int i = l, j = r, x = a[l];
        while (i < j)//以x为界划分
        {
            while(i < j && a[j]>= x)
                j--; 
            
                a[i] =a[j];
            while(i < j && a[i]< x)
                i++; 
            
                a[j] = a[i];
        }
        a[i] = x;
        quick_sort( l, i - 1); //递归左区间
        quick_sort( i + 1, r);//递归右区间
    }
}
int main()
{
    int n ;
    cin >> n;
    for (int i = 0; i < n; i++)
    {
        cin >> a[i];
    }
    quick_sort(0, n-1);
    for (int i = 0; i < n; i++)
    {
        cout << a[i] << " ";
    }
    return 0;
}
2024/6/7 20:44
加载中...