如何优化质数判断代码以减少内存占用?

提升质数判断代码效率,降低内存消耗

现有代码因内存占用过高未能通过测试。以下优化策略可有效降低内存占用:

首先,在isprime函数中,用i * i 替换i ,避免Math.sqrt()函数的重复调用,减少临时变量,提升效率。

其次,只需检查至$\sqrt{a}$即可判断是否为质数,因为大于$\sqrt{a}$的因子必然对应小于

$\sqrt{a}$的因子。此优化可减少循环次数,节省内存。

优化后的isprime函数:

public static boolean isprime(long a) {
    if (a <= 1) return false;
    for (long i = 2; i * i <= a; i++) {
        if (a % i == 0) return false;
    }
    return true;
}