求100以内的素数(质数)
[BAD]:
1 | public static void main(String[] args) { |
[NOT BAD]:
1 |
|
原理:获取当前值,将当前值按顺序相乘并在结果集中去掉,如此类推,知道遍历完结果集中所有的元素。
方法二:
1 | public static void main(String[] args) { |
原理:获取当前值,将当前值开平方根,用此数来作为循环的次数并依次求出是否质数(理论上能找到在当前值开根前对应的除数而余为零的数)。
衍生思路:是否可以根据以获取的质数来遍历相除当前值,但是在操作中,貌似时间和空间复杂程度都没有方法2中的简单,日后日后再待商榷。