Java经典算法40题 – 题目2

【程序2】题目:
判断101-200之间有多少个素数,并输出所有素数。 思路:先写一个函数判断传进来的是否是素数,然后for循环101-200之间的所有的数。

package org.sixlab.algorithm40;

import java.util.ArrayList;
import java.util.List;

public class PrimeNumber {
    public static void main(String\[\] args) {

        List<Integer> primeNumbers = new ArrayList<Integer>();
        for (int i = 101; i < 201; i++) {
            if (isPrime(i)) {
                primeNumbers.add(i);
            }
        }

        System.out.println(primeNumbers.size());
        System.out.println(primeNumbers);
    }

    public static boolean isPrime(int num) {
        if (num == 2) {
            return true;
        }
        for (int i = 2; i <= Math.sqrt(num); i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }
}

上一篇
Java经典算法40题 – 题目3 Java经典算法40题 – 题目3
【程序3】题目:打印出所有的 “水仙花数 “,所谓 “水仙花数 “是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 “水仙花数 “,因为153=1的三次方+5的三次方+3的三次方。 package org.sixlab.al
2014-04-02
下一篇
Java经典算法40题 – 题目1 Java经典算法40题 – 题目1
【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?思路:很显然是一个递归的问题,计算兔子的数量:1 1 2 3 5 8 13,得出规
2014-03-29