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

第一个缺失正数

淙嶙6年前 (2020-07-21)未命名950

描述


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


输入


1,2,0


输出


3


输入样例

1,2,0
3,4,-1,1
-1,-3,-5
1,2,3
-1,-10,0

输出样例

3
2
1
4
1


private static String solution(String line) {
    // 在此处理单行数据
  String[] a = line.split(",");
Set set = new HashSet();
for (int i = 0; i< a.length;i++){
int n = Integer.parseInt(a[i]);
if (n > 0){
set.add(n);
}
}
int result = 0;
for(int i=1; i<= a.length+1 ;i++){
if(!set.remove(i)){
result = i;
break;
}
}
   // 返回处理后的结果
   return String.valueOf(result);
}

相关文章

SpringMVC- DispatcherServlet你再做什么?

SpringMVC- DispatcherServlet你再做什么?

1.DispatcherServlet的出现位置 2.DispatcherServlet初始化部分 3.DispatcherServlet提供服务 4.DispatcherServlet销毁...

HashMap的源码解读(一)

HashMap的源码解读(一)

/*  * 版权(C)1997, 2010,Oracle和/或其附属公司版权所有。  * Oracle专有/机密。使用须遵守许可条款。  *...

Ubuntu安装docker

Ubuntu安装docker

1.查看ubuntu版本,官方指定的版本才能安装。https://docs.docker.com/install/linux/docker-ce/ubuntu/To install Docker CE...

发表评论

访客

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