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

第一个缺失正数

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

描述


给出一个无序的数列,找出其中缺失的第一个正数,要求复杂度为 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);
}

相关文章

最少交换次数

最少交换次数

描述 给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。...

...

关于我

关于我

人的学习能力是随着努力程度变化的,毅力才是打开成功大门的钥匙 错在止步不前,胜在改变自己 The mistake is to stop, the better is to change yo...

发表评论

访客

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