findFirstMissingPositive

来源:互联网 发布:优化驱动器多少遍 编辑:程序博客网 时间:2024/05/16 18:14

void bucket_sort(int A[],int n)

{

for(size_t i=0;i<n;++i)

{

while(A[i]!=i+1)

{

if(A[i]<=0||A[i]>n||A[i]==A[A[i]-1])

break;

swap(A[i],A[A[i]-1]);

}

}

}

int findFirstMissingPositive(int A[],int n)

{

bucket_sort(A,n);

for(size_t i=0;i<n;++i)

if(A[i]!=i+1)

return i+1;

return n+1;

}

0 0
原创粉丝点击