在java中使用逗号分隔的整数值查找字符串中的缺失数字

时间:2014-12-12 16:45:46

标签: arrays

我有1到100个唯一数字的字符串,其中(,)逗号分隔值如下所示,我错过了一个数字。那么如何找出丢失的号码。

Ex: - String s =“1,2,3,4,5,7,8,..... 100”;

/ *这里有6个错过上面的字符串,所以我怎么能通过使用核心java程序找到丢失的6个值* /

3 个答案:

答案 0 :(得分:0)

如果整数列表已排序,则迭代它并将值与其数字索引键进行比较。只要一个是一个一个,你知道哪个号码丢失了,以及阵列中的位置是什么。

答案 1 :(得分:0)

当你遍历字符串时,检查字符串中的下一个数字是否是最后一个数字的+1。

anyMissing = false;
...
if (lastNumber+1 != currentNumber) anyMissing = true; 
// or simply print the number or something

答案 2 :(得分:0)

试试这个:

public static void main(String args[]) {
  String s="1, 2, 3, 4, 5, 7, 8";
  int sum = 0;
  int lastNumber = 0;


for (String str : s.split(",\\s+")) {
  lastNumber = Integer.parseInt(str);
  sum += lastNumber;
}
System.out.println((lastNumber * (lastNumber + 1) /2) - sum);
  }
}