检测一个数组缺少哪几个数
题目:一个存放了1到N的一个数组中缺少M个数,求出,缺少那几个数,注意,数组中的数据是随机存放的
算法一:2N
int[] s=new int[N-M]{1,3,5,7,9,8,4,6,2,11,10,99,58,65,........};
List l=new arraylist();
for(int i=0;i<N;i++){
l.add(i);
}
for(int i=0;i<N-M;i++){
l.remove(s[i]);
}
for(int i=0;i<l.size();i++){
system.out.println(l.get(i));
}
算法二:2N-M
int[] s=new int[N-M]{1,3,5,7,9,8,4,6,2,11,10,99,58,65,........};
int falg[N];
for(int i=0;i<N-M;i++){
falg[s[i]-1]=1;
}
for(int i=0;i<N;i++){
if(falg[i]==0)
system.out.println(i+1);
}
没有克服不了的困难,只有畏惧的心。
生活之所以耀眼,是因为磨难与辉煌会同时出现。所以,别畏惧暂时的困顿,即使无人鼓掌,也要全情投入,优雅坚持。请相信:不管多险峻的高山,总会给勇敢的人留一条攀登的路。只要你肯迈步,路就会在你脚下延伸。