日期:2014-05-20 浏览次数:20943 次
public class FindSeq {
private int[] arr = null;
private int length = 0;
public FindSeq(int [] arr){
this.arr = arr;
this.length = arr.length;
}
/**
* @param args
*/
public static void main(String[] args) {
FindSeq findSeq = new FindSeq(new int[] {1,3,3,12,2});
findSeq.find3Seq();
}
public void find3Seq(){
int index = 0;
boolean has = false;
while(index < length - 2){
if(find3Seq(index)){
has = true;
break;
}else{
index += 3;
}
}
System.out.print(has);
}
private boolean find3Seq(int index){
return arr[index] + 1 == arr[index + 1] && arr[index + 1] + 1 == arr[index + 2];
}
}
------解决方案--------------------
晕,while里的else应该写
index++
才对
------解决方案--------------------
怎么说LZ才好呢,需要找出是否是连数,就像楼上一些大神说的一样,你直接来个冒泡排序,小到大或者大到小都可以,然后最后循环排序后的数组,比较不就可以了么!
------解决方案--------------------
楼主的意思...
345859632
假如这一串数字
其中连续的数有3、4、5 和 58、59
------解决方案--------------------
先排序倒是真的,然后就好办咯,哈哈!天才