posts - 10,comments - 2,trackbacks - 0
今天面试被问到了这个问题记录下:
 1 /**
 2      * 取得所以小于指定数的质数
 3      * 
 4      * @param num
 5      *            int 指定的数
 6      * @return List<Integer>
 7      */
 8     public List<Integer> getPrimeNumber(int num) {
 9         // 返回值
10         List<Integer> primeNumberList = new ArrayList<Integer>();
11         // 作为是否是质数的标记
12         boolean flag = true;
13         // 从2开始循环
14         for (int i = 2; i < num; i++) {
15             for (int j = 2; j <= Math.sqrt(i); j++) {
16                 // 如果不是质数则跳出循环
17                 if (i % j == 0) {
18                     flag = false;
19                     break;
20                 }
21             }
22             // 是质数则保存到primeNumberList中
23             if (flag) {
24                 primeNumberList.add(i);
25             }
26             // 将质数的标记置回来
27             flag = true;
28         }
29         return primeNumberList;
30     }
posted on 2011-09-09 01:00 showsun 阅读(331) 评论(0)  编辑  收藏 所属分类: J2SE

只有注册用户登录后才能发表评论。


网站导航: