快速排序

自然数数组的排序

http://www.nowcoder.com/questionTerminal/c7d5def10ad942629df21483c89118df

include <bits/stdc++.h>

using namespace std;

int getIndex(vector<int>& arr,int left,int right)
{
int tmp=arr[left];
while(left<right)
{
while(left<right && arr[right]>=tmp)
--right;
arr[left]=arr[right];
while(left<right && arr[left]<=tmp)
++left;
arr[right]=arr[left];
}
arr[left]=tmp;
return left;
}</int>

void quickSort(vector<int>& arr,int l,int r)
{
if(l<r)
{
int index = getIndex(arr,l,r);
quickSort(arr,l,index-1);
quickSort(arr,index+1,r);
}
}</int>

int main()
{
int N;
cin>>N;
vector<int> arr(N);
for(int i=0;i<N;i++)
cin>>arr[i];
quickSort(arr,0,arr.size()-1);
for(int i=0;i<arr.size();i++)
cout<<arr[i]<<" ";
return 0;
}</int>

全部评论

相关推荐

头像
11-09 12:17
清华大学 C++
out11Man:小丑罢了,不用理会
点赞 评论 收藏
分享
躺尸修仙中:因为很多92的也去卷中小厂,反正投递简历不要钱,面试不要钱,时间冲突就推,不冲突就面试积累经验
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务