可能重复:
Easy interview question got harder: given numbers 1..100, find the missing number(s)
给定一个包含97个数字的列表(或数组),每个数字都是唯一的,介于1和100之间。如何从列表中找到三个缺失的数字?算法的复杂性?
我的解决方案:
find3missing(int* array)
{
int newarray[100] = {0};
For i = 0 to 99
++newarray[array[i]] ;
For i = 0 to 99
If newarray[i] != 1
Cout << “the missing number is ” << i+1 << endl ;
}
O(n).
有更好的解决方案吗?
感谢