100分,急求高手写个简单算法,线上等

来源:百度知道 编辑:UC知道 时间:2024/06/14 20:13:56
判断一串数字中是否含有连续的5个数,0可以代替任何数。如,
13,3,5,12,4,0,7,45-》返回true,因为3,4,5,0,7是连续的
0,3,5,12,0,98,7,65-》返回true,因为3,0,5,0,7是连续的
0,0,0,0,0-》返回true
C#语言 明天面试啊,如果考到了,能解决 的,必当重谢

是什么语言啊。

有个零好难 没时间研究哦 没零的如下:

public class TestData {

/**
* @param args
*/

static int count=0;

static public boolean testnum(int[] a)
{
int iLength = a.length;
//int count=0;
for(int i = 0;i< iLength-1;i++)
{

if(a[i]== a[i+1]-1)
{
count ++;
}

else
count = 0;

}
if(count >=5)
return true;
else
return false;

}

public static void main(String[] args) {
// TODO 自动生成方法存根
int ac[] = {1,2,3,4,5,6,7};

System.out.println(testnum(ac));

}

}

我做了。。没做完感觉太烦了。。
先放到int数组里面,用arrary排序。。然后0总是在前面几个的
我先循环下判断0有几个。4~5个0好判断就那种可能。
然后如果1到3个0~~每种里面就3种可能数字排序
我算了算了~~if里面条件要写好长。。。实在太烦了。。
就是 if(0是3个)
然后下面for循环。。3种数字的可能都要写好。。。
然后是if(0是2个)
然后下面for循环

这样 。。我感觉能写出来。。但是比较麻烦~~~我想了好久只相出这种办法来可能性太多