• Rikudou_Sage
    link
    fedilink
    965 months ago

    While this doesn’t work all the time, when it does, it’s really fast. Similar to the isPrime function, it’s correct most of the time and is much faster than alternative implementations:

    function isPrime(number) {
        return false;
    }
    
    • Dave.
      link
      fedilink
      36
      edit-2
      5 months ago

      What your code can do is run this first and if it returns false then do a quick double check using a traditional isPrime function. Really speeds things up!

      • Rikudou_Sage
        link
        fedilink
        255 months ago

        I mean, it has a 99.999%+ success rate on a large enough sample and I can live with that.

        • Dave.
          link
          fedilink
          65 months ago

          Nah, you’ve always got to check the corner cases. It’s a variation on Murphy’s Law - you don’t encounter corner cases when you’re developing a program but corner cases are 99 percent of an everyday user’s interaction.

      • @[email protected]
        link
        fedilink
        45 months ago

        Better. Return true if the number is in a stored list of known primes, otherwise return false right away. But then, start a separate thread with an actual verification algorithm. When the verification is done, if it was actually a prime number, you just crash the program with a WasActuallyPrime exception.

      • @andnekon
        link
        45 months ago

        50/50 would be for isOdd with the same implementation

      • @Lmaydev
        link
        35 months ago

        Primes are not that common especially as numbers get bigger.

        It’ll be right the vast majority of times.