题解 | #排序#

排序

https://www.nowcoder.com/practice/508f66c6c93d4191ab25151066cb50ef

#include<iostream>
#include<cstring>
using namespace std;
int arr[101];
int Partition(int A[],int low,int high){
    A[0]=A[low];
    while(low<high){
        while(low<high && A[high]>=A[0])--high;
        A[low]=A[high];
        while(low<high && A[low]<=A[0]) ++low;
        A[high]=A[low];
    }
    A[low]=A[0];
    return low;
    

}
void QuickSort(int A[],int low,int high){
    if(low<high){
        int pivotpos=Partition(A,low,high);
        QuickSort(A, low,pivotpos-1);
        QuickSort(A,pivotpos+1,high);
    }


}
int main(){
    int n;
    while(cin>>n && n){
        memset(arr,0,101);
        for(int i=1;i<=n;i++){
            cin>>arr[i];
        }
        QuickSort(arr, 1, n);
        for(int i=1;i<=n;i++){
            cout<<arr[i]<<" ";
        }
    }

}

全部评论

相关推荐

06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务