ITPub博客

首页 > IT职业 > IT图书 > 算法学习记录02-判断输入数字是不是质数

算法学习记录02-判断输入数字是不是质数

IT图书 作者:ldzsl 时间:2021-09-09 10:50:29 0 删除 编辑

需求:判断一个输入数是不是质数

分析:

1.什么是质数?

只能被1和本身整除的数就是质数,1既不是质数也不是合数;

质数总是等于6x+1 或者 6x+5,x是大于等于1的自然数;

假如n是合数,必然存在非1的两个约数p1和p2,其中p1<=sqrt(n),p2>=sqrt(n),证明是不是质数可以循环到sqrt(n) 这部分就够了

2.关键代码点

function isPrime(number){
  if(number<=3){
    return number > 1
  }
  if(number % 6 != 1 && number % 6 != 5){
    return false
  }
  for(let i = 2;i<=Math.sqrt(number);i++){
    if(number % i === 0){
      return fasle
    }
  }
  return true
}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2325/viewspace-2826588/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2016-01-19

  • 博文量
    72
  • 访问量
    12921