素数定义:大于1,且只有1和它本身两个因数,即不能写成 n=p*q(p、q均不为1)
判定算法:
方法一:根据定义从2到n-1,依次判断n是否能整除,如果都不能则为素数
private boolean isPrime(int m){
for(int i=2;i<m;i++){
if(m%i==0){
return false;
}
}
return true;
}
方法二:方法一的改进,n=p*q, p,q里面必然有个数小于等于sqrt(n),因此只需要判断1<x<=sqrt(n)部分
private boolean isPrime(int m){
if(m%2==0){
return false;
}
for(int i=2;i<Math.sqrt(m);i++){
if(m%i==0){
return false;
}
}
return true;
}
本文深入探讨了素数的定义及两种高效的判定算法。首先,介绍了素数的基本概念,即大于1且仅能被1和自身整除的自然数。随后,详细讲解了两种判定方法:一是从2至n-1遍历检查整除性;二是优化后的从2至sqrt(n)检查,大幅提升了效率。
5120

被折叠的 条评论
为什么被折叠?



