论坛首页 招聘求职论坛

通过一道简单面试题看国内java程序员基本水平

浏览 24730 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (2)
作者 正文
   发表时间:2011-04-11   最后修改:2011-04-11
没有毁灭的意思。。。可能我是一个比较喜欢技术的,宁愿拿2000+空闲点,研究理论。也不愿多拿点工资去当“车床工”,纯属个人想法。。。。
Java_大猫 写道
NC帖?
我觉得 起码国内的水平高与低 咱无法去评论。你就因为那一个算法去毁灭整个中国程序员。那你这绝对的NC帖。

0 请登录后投票
   发表时间:2011-04-11  
cttnbcj 写道
没有毁灭的意思。。。可能我是一个比较喜欢技术的,宁愿拿2000+空闲点,研究理论。也不愿多拿点工资去当“车床工”,纯属个人想法。。。。
Java_大猫 写道
NC帖?
我觉得 起码国内的水平高与低 咱无法去评论。你就因为那一个算法去毁灭整个中国程序员。那你这绝对的NC帖。


http://www.iteye.com/topic/864943
0 请登录后投票
   发表时间:2011-04-11  
等同的语义的低成本转化
每引入一个新素数,可计算出相关的合数,对这些合数打标
以25为例在引入5的时候已经可以确定这个数是合数,而不需要等到25再去mod 3,5,再和0比较
只算奇数其实也是默认剔除了2的合数空间
0 请登录后投票
   发表时间:2011-04-11   最后修改:2011-04-11
我记得有一种方法是筛选法。
public static void main(String args[]) {
int arrInt[] = new int[100];
for (int i = 2; i < 100; i++) {
if (arrInt[i] == 0) {
                                System.out.println(i);
for (int j = 2; j * i < 100; j++) {
arrInt[j * i] = 1;
}
}
}
}
0 请登录后投票
   发表时间:2011-04-11  
本来不想回的,
回来一想还是回了

  就 一   盲人摸象
0 请登录后投票
   发表时间:2011-04-11   最后修改:2011-04-11
jhcfe 写道
筛掉乘法1*1到10*10即可
楼主说的“删选+6N”是什么意思

6N,是步长。不需要按+2 =奇数 去运算,直接可以用6N(除去2,3)步长,可以缩短3倍。还有就是前面帖子回复了
0 请登录后投票
   发表时间:2011-04-11  
cttnbcj 写道
jhcfe 写道
筛掉乘法1*1到10*10即可
楼主说的“删选+6N”是什么意思

6N,是步长。不需要按+2 =奇数 去运算,直接可以用6N(除去2,3)步长,可以缩短3倍。还有就是前面帖子回复了

模6,余1、5, 只要计算2/6
模30,余1,7,11,13,17,19,23,29, 只要计算8/30
......

这个,再往前,就是枚举了。
0 请登录后投票
   发表时间:2011-04-11   最后修改:2011-04-11
int[] list = new int[100];
for (int i = 2; i < 101; i++) {
     for (int j = i; j * i < 101; j++) {
         list[i * j - 1] = 1;
     }
     if (list[i - 1] == 0) {
          System.out.println(i);
     }
}
0 请登录后投票
   发表时间:2011-04-11  
kimmking 写道
cttnbcj 写道
jhcfe 写道
筛掉乘法1*1到10*10即可
楼主说的“删选+6N”是什么意思

6N,是步长。不需要按+2 =奇数 去运算,直接可以用6N(除去2,3)步长,可以缩短3倍。还有就是前面帖子回复了

模6,余1、5, 只要计算2/6
模30,余1,7,11,13,17,19,23,29, 只要计算8/30
......

这个,再往前,就是枚举了。

谢谢
0 请登录后投票
   发表时间:2011-04-11  
民工行业

该贴毁灭了中国程序员!
0 请登录后投票
论坛首页 招聘求职版

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