当前位置:首页 > 未命名 > 正文内容

最长连续数列

淙嶙5年前 (2020-07-21)未命名1278

描述


输入一个乱序的连续数列,输出其中最长连续数列长度,要求算法复杂度为  O(n)  。


输入


54,55,300,12,56


输出


3


输入样例

100,4,200,1,3,2
54,55,300,12
1
5,4,3,2,1
1,2,3,4,5,6

输出样例

4
2
1
5
6


private static String solution(String line) {
    // 在此处理单行数据
     // 在此处理单行数据
String[] a = line.split(",");
Set nset = new HashSet();
Set set = new HashSet();
for (int i = 0; i< a.length;i++){
set.add(Integer.parseInt(a[i]));
nset.add(Integer.parseInt(a[i]));
}
Iterator it = nset.iterator();
int result = 0;
while(it.hasNext()){
int temp = 0;
int n = it.next();
int i = n-1;
while(set.remove(i)){
i--;
temp ++;
}
while(set.remove(n)){
n++;
temp ++;
}
result = result >= temp ? result: temp;
}
   // 返回处理后的结果
   return String.valueOf(result);
}

相关文章

交叉队列

交叉队列

描述 给出三个队列 s1,s2,s3 ,判断 s3 是否是由 s1 和 s2 交叉得来。如:s1 为 aabcc , s2 为 dbbca。当 s3 为 aadbbcbcac 时,返回 true...

MyBatis源码解读--从入口类SqlSessionFactoryBuilder出发

MyBatis源码解读--从入口类SqlSessionFactoryBuilder出发

先摘抄一段MyBatis官方文档代码: String resource = "org/mybatis/example/mybatis-config.xml"; InputStream inputStr...

Spring@Service的默认bean名称

Spring@Service的默认bean名称

若类名字为Abc,则生成bean的实例名字为abc若类名字为ABc,  则生成bean的实例名字为ABc验证结果,目录:LoginService.java (正常类)package ...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。