题解 | #明明的随机数#

明明的随机数

https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0

#include <stdio.h>

void _quick_sort(int* arr,int left,int right)
{
	if(left >=right) return;
	int l=left,r=right;
	int p=(l+r)/2;
	int val=arr[p];
	while(l<r)
	{
		while(l<p && arr[l]<=val) l++;
		if(l<p)
		{
			arr[p]=arr[l];
			p = l;
		}
		while(r>p&&arr[r]>=val) r--;
		if(r>p)
		{
			arr[p]=arr[r];
			p = r;
		}
	}
	arr[p]=val;
	_quick_sort(arr,left,p-1);
	_quick_sort(arr,p+1,right);
}

void quick_sort(int *a,int len)
{
	_quick_sort(a,0,len-1);
}

int main() 
{
    int size=0;
    scanf("%d",&size);
    int a[size];
    fflush(stdin);
    for(int i=0;i<size;)
    {
        scanf("%d",&a[i]);
        i++;
        for(int j=0;j<(i-1);j++)
        {
            if(a[j]==a[i-1]) 
			{
				i--;
				size--;	
				//printf("---------\n");
			}
        }
    }
	quick_sort(a,size);
	for(int i=0;i<size;i++)
    {
    	printf("%d\n",a[i]);
	}
}

全部评论

相关推荐

11-04 14:10
东南大学 Java
_可乐多加冰_:去市公司包卖卡的
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务