当前位置: 首页 > news >正文

网站怎样做谷歌推广/赣州seo顾问

网站怎样做谷歌推广,赣州seo顾问,记事本做网站怎么加背景图,凡科互动游戏作弊素 数——只能被1和它本身整除的数(除1以外,1既不是素数也不是合数)现给出一个数N(N为正整数),编写方法判断其是否为素数。直观想法遍历从2至N-1,看是否存在N的约数。若存在,即不是素数。基础改进不必从2遍历至N-1,数N…

素 数

——只能被1和它本身整除的数(除1以外,1既不是素数也不是合数)

现给出一个数N(N为正整数),编写方法判断其是否为素数。

直观想法

遍历从2至N-1,看是否存在N的约数。若存在,即不是素数。

基础改进

不必从2遍历至N-1,数N若是合数,则其至少可由两个因数相乘得到,这两个数必定一个大于(或等于)sqrt(n),一个小于(或等于)sqrt(n),因此仅需遍历至sqrt(n)即可。

改进方法一 (偶数;缩小判断范围;)

Step 1 (除2以外)判断N是否为偶数,若是,则判断结束——不是素数;

Step 2  若N不是偶数但是合数,它的因数绝不可能是偶数(原因 偶数×偶数=偶数;偶数×奇数=偶数),

因此判断奇数N的因数时,可以省去对偶数的判断。(i+=2)

1 static boolean isPrime_1(intN){2 int tmp=(int)Math.sqrt(N);3 //Step 1

4 if(N==2)return true;5 if(N%2==0)return false;6 //Step 2

7 for(int i=3;i

10 return true;11 }

改进方法二 (质数分布规律;pruning策略;)

一个关于质数分布的规律:大于等于5的质数一定和6的倍数相邻(即大于等于5的质数x,都可以表示为x=6k+1 或者是 x=6k-1,k为>0的自然数)。

但要注意:在6的倍数相邻两侧并不是一定就是质数。

证明

直观看,大于等于5的自然数都可以用6k-1,6k,6k+1,6k+2,6k+3,6k+4,6k+5的形式表示,显然6k+2 = 2(3k+2),6k+3 = 3(2k+1),6k+4 = 2(3k+2)都是合数,再除去6k本身,因此大于等于5的质数都可以表示成6k+1和6k+5(当x大于等于6时,6k+5与6k-1可表示同一个数)的形式。

数学证明

质数x大于等于5,则一定不是3的倍数,也不是2的倍数。

如果一个自然数不是3的倍数,有两种情况,设 x=3p+1或x=3p+2 (p>1)

如果一个自然数不是2的倍数,有一种情况,设 x=2t+1 (t>3)

1)若x=3p+1,且x=2t+1

则x=3p+1=2t+1 >> x-1=3p=2t

>> 3p=2t,可知p为2的倍数,t为3的倍数,

设p=2k,>> t=3k

因此x=2*3k+1=6k+1

2)若x=3p+2,且x=2t+1

则x=3p+2=2t+1

>> 3p+1=2t,因此3p为奇数,即p为奇数,设p=2k-1

则3*(2k-1)+1=2t,>> t=3k-1

因此x=2(3k-1)+1=6k-1

Step 1  单独判断2、3,都是素数;

Step 2  判断N是否在6的倍数的两侧,若不在,则判断结束——不是素数;

Step 3  数N在6的倍数两侧也不一定是质数,还需判断是否能在6的倍数两侧的数中找到数N的因数,若找不到,才可判定为质数。

(为什么只需在“6的倍数两侧的数”中寻找因数?

原因 所有合数可由质数的积组成,所以N只需要与可能是质数(即6的倍数的前后两个数)的数进行取余)

1 static boolean isPrime_2(intN){2 int tmp=(int)Math.sqrt(N);3 //Step 1

4 if(N==2||N==3)return true;5 //Step 2

6 if(N%6!=1&&N%6!=5)return false;7 //Step 3

8 for(int i=5;i<=tmp;i+=6)9 if(N%i==0||N%(i+2)==0)return false;10 /*此处11 * i表示形式为6k+5的数,12 * i+2表示形式为6k+1的数13 */

14

15 return true;16 }

方法比较 && 代码测试

测试代码

2bd42774e0af7a152d837ac2899c687e.png

数据情况

08336556e939bcc50c833bdd2e319b46.png

f5875f470309839d046c4db555c8ea9b.png

05ffcffcce8bf3c9604103f23a93fadb.png

df8fa1e0ddb1922506a6b9b10919ffb9.png

7cd54c4841459d0ee4a437fe11210676.png

cc71d71437af3c0691ac446a909334a2.png

cd19431961420f440d874498ac609336.png

“改进方法二” 完胜

E N D

http://www.jmfq.cn/news/5073589.html

相关文章:

  • 寺院网站建设/百度推广官网
  • 手机网站建站cms/最新中高风险地区名单
  • 南山网站建设公司/网店怎么开
  • 网站关键词没被搜出来/专业网站seo推广
  • 网站建设就问山东聚搜网络f/酒店网络营销方式有哪些
  • vue做的个人网站/百度竞价推广课程
  • dede生成网站地图/成都疫情最新情况
  • 龙口做网站价格/做网站的外包公司
  • 厦门网站推广步骤机构/代发关键词包收录
  • 能源公司网站建设/如何进行市场推广
  • 电脑做系统网站/网页开发需要学什么
  • 网站定制开发要多久/线上广告投放渠道
  • 做网站霸屏公司销售好做吗/申请域名的方法和流程
  • 杭州模板网站建站/互联网广告推广公司
  • 合肥专门做网站的公司/网络推广优化品牌公司
  • 制作简单的网站/西安专业seo
  • 福田网站建设设计/灰色产业推广引流渠道
  • 软件网站排行榜/关键词优化营销
  • 局域网如何做网站/seo关键词首页排名
  • wordpress主题 手机app/云优化seo软件
  • 达州市做网站/免费网站大全
  • 宿州网站推广/外贸seo网站建设
  • 学校网站做几级等保/网络服务投诉平台
  • 国外购物网站系统/市场推广外包团队
  • 深圳网站建设推荐q479185700顶上/黄页88网络营销宝典
  • 高明网站开发/怎么建造自己的网站
  • 建立网站的程序/网店推广策划方案
  • 网站域名到期时间查询/chatgpt网址
  • 专业做汽配的网站/台州seo排名扣费
  • 深圳交委建设中心网站/百度开发平台