软件工程个人作业07
一.设计思想
1.通过查找,每次从列表中删除两个不同的ID(不管是否包含“水王”的ID)
2.最后得出出现次数仍然超过总数的一半的ID
二.代码实现
public class ShuiWang {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] array={5,1,2,3,8,5,5,5,5,4,5};
System.out.println(find(array));
}
public static int find(int[] array)
{
int m=array.length;
int n=0;
int a=0;
for(int i=0;i<m;i++)
{
if(a==0)
{
n=array[i];
a=1;
}
else
{
if(n==array[i])
{
++a;
}
else
{
--a;
}
}
}
return n;
}
}
三.实现截图

四.个人总结
我采用的这个算法有个缺点,不能确切知道这个ID出现多少次,只能知道这个ID出现的次数大于一半,如果想知道,最后还要遍历多次。
通过这次课堂测验,我知道了能做出来并不难,但是要用一个最佳方法才是我们应该考虑学习的。
浙公网安备 33010602011771号