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

最长连续数列

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

描述


输入一个乱序的连续数列,输出其中最长连续数列长度,要求算法复杂度为  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);
}

相关文章

Redis 分布式锁

Redis 分布式锁

一、什么是分布式锁? 在分布式环境下,系统被拆分,代码可能会被不同的jvm运行,在单进程的情况下,我们可以使用java语言和本身的类库提供的锁,完成高并发的需求。 二、常见的分布式锁: Mem...

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

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

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

第一个缺失正数

第一个缺失正数

描述 给出一个无序的数列,找出其中缺失的第一个正数,要求复杂度为 O(n)如:[1,2,0],第一个缺失为3。如:[3,4,-1,1],第一个缺失为2。 输入 1,2,0 输出...

发表评论

访客

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