求高人指点给定一个无序数组,元素各异,给出一个算法,使得能够找出最大的连续序列的长度
给定一个无序数组,元素各异,给出一个算法,使得能够找出最大的连续序列的长度,比如数组[100,4,2,3,1],返回的是[1,2,3,4]的长度4,时间为O(n)[4,7,5,9,8]连续的串就是2
【1,100,5,4,2,3】是4
7 3 2 4 6 5答案是6
程序代码:#include<stdio.h>
int mostrlen(int );
int main()
{
int a[10]={2,4,6,1,3,5,12,9,10,23},b[10],i;
for(i=0;i<10;i++)
b[i]=mostrlen(a[i]);
for(i=1;i<10;i++)
{
if(b[0]<b[i])
b[0]=b[i];
else continue;
}
printf("%d\n",b[0]);
return 0;
}
int mostrlen(int s)
{
int a[10]={2,4,6,1,3,5,12,9,10,23},i,t=1;
loop:for(i=0;i<10;i++)
{
if(a[i]==s+1)
{
t++;
s+=1;
goto loop;
}
else continue;
}
return t;
}