判断一个数字是否为质数 - isPrimeNumber()
发布时间:2023-12-10 16:50:32
判断一个数字是否为质数可以通过以下代码实现:
public static boolean isPrimeNumber(int num) {
if (num <= 1) {
return false;
}
// 遍历2到num的平方根之间的所有数
for (int i = 2; i <= Math.sqrt(num); i++) {
// 如果num能被i整除,则说明num不是质数
if (num % i == 0) {
return false;
}
}
// 如果没有在循环中返回false,则说明num是质数
return true;
}
运行原理:
1. 如果数字num小于或等于1,则它不是质数,直接返回false。
2. 循环遍历从2到num的平方根之间的所有数字。
3. 在循环中,如果num能被当前数字整除,则说明num不是质数,返回false。
4. 如果没有在循环中返回false,则说明num是质数,返回true。
这个方法的时间复杂度是O(sqrt(n)),其中n是要判断的数字。
注意:这个方法只适用于判断正整数是否为质数,对于负数和0不适用。
