论坛首页 招聘求职论坛

一道简单的Java面试题

浏览 103231 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (3)
作者 正文
   发表时间:2011-04-10  
zhangyang6380006 写道
LZ您开玩笑呢吧,敢要这么多这个题目都没做出来?我写个试试
for(int i=1;i<100;i++)
{
if(i % 2) == 1)
system.out.println(i+" 是质数");
else
break;
}
也不知道对不对,没测

2算质数吧,9难道也是质数。。。
0 请登录后投票
   发表时间:2011-04-10  
MD那么难的题目,没20K,别找我。。。。
0 请登录后投票
   发表时间:2011-04-10   最后修改:2011-04-10
public static void main(String[] args) {
		// TODO Auto-generated method stub

		List<Integer> ii = new ArrayList<Integer>();
		for(int i=2;i<100;i++)
			if(matches(i,ii))//如果是质数
				ii.add(i);
		
		for(Integer a : ii)
			System.out.println(a);
	}

	private static boolean matches(int i,List<Integer> ii) {
		// TODO Auto-generated method stub
		if(i == 2)//这里已经保证ii不会为空
			return true;
		for(int a : ii){
			if(i%a == 0)
				return false;
		}
		return true;
	}
0 请登录后投票
   发表时间:2011-04-10  
我快毕业了~心理有底了。。。。。
0 请登录后投票
   发表时间:2011-04-10  
已经无力吐槽了,连奇数和质数都能分不清,费马表示压力巨大。。。。。
jhcfe 写道
zhangyang6380006 写道
LZ您开玩笑呢吧,敢要这么多这个题目都没做出来?我写个试试
for(int i=1;i<100;i++)
{
if(i % 2) == 1)
system.out.println(i+" 是质数");
else
break;
}
也不知道对不对,没测

2算质数吧,9难道也是质数。。。

0 请登录后投票
   发表时间:2011-04-10  
话说我一直不明白为嘛要比较到被比较数的平方,哪位给指点一下 谢谢
0 请登录后投票
   发表时间:2011-04-10  
晕,
我给个思路吧!
计算i是否是质数只需要用i去除i之前的质数判断
代码如下:
//获得1-i之间的所以质数
private  List<Integer> getPrime(int number){
List<Integer> primes =new ArrayList<Integer>();
primes.add(2);
for(int i=3;i<=number;i++){
   if(isPrime(primes, i)){
   primes.add(i);
   }
}
return primes;
}
   
//primes 是i之前的所有质数集合,i是需要判断的数
private  boolean isPrime(List<Integer> primes,int i) {
for (Integer prime : primes) {
if(i%prime==0){
return false;
}
}
return true;
}
0 请登录后投票
   发表时间:2011-04-10  
本人数学系,对你8k不感兴趣。
我给的答案是计算量最小的了。

gglu兄和我的答案相同,不好意思,没看回帖,重复了。
0 请登录后投票
   发表时间:2011-04-10  
楼主,你得先给人家解释什么是素数

多年不碰数学,难免忘记
0 请登录后投票
   发表时间:2011-04-10   最后修改:2011-04-14
public class TestZHISHU {
	public static void zs(int n) {
		for (int i = 3; i <= n; i += 2) {
			boolean iszs = true;
			for (int j = 2; j <= Math.sqrt(i); j++) {
				if (i % j == 0) {
					iszs = false;
					break;
				}
			}
			if (iszs) {
				System.out.print(i + " ");
			}
		}
	}


有待提高..
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics