原文地址:1-100自然数 找出缺少的数(转)
作者:InnerPeace
现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程。
查看复制到剪切板打印
这个是计数法,需要1次扫描原始数组,一次扫描结果数组。
其它的需要排序的,都是错误的算法,因为排序本身并没有给解决问题带来方便,反倒是增加了大量的计算和比较
查看复制到剪切板打印
- int[]
b = new int[]{....存入98个随机的1~100的整数}; - int[]
a = new int[100]; - for(int
t : b) -
a[t-1]=t; - for(int
t=0; t < a.length; t++) -
if(a[t]==0) -
System.out.println(t+1); -
- int[]
b = new int[]{....存入98个随机的1~100的整数}; - int[]
a = new int[100]; - for(int
t : b) -
a[t-1]=t; - for(int
t=0; t < a.length; t++) -
if(a[t]==0) -
System.out.println(t+1);
这个是计数法,需要1次扫描原始数组,一次扫描结果数组。
其它的需要排序的,都是错误的算法,因为排序本身并没有给解决问题带来方便,反倒是增加了大量的计算和比较