婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > python高效的素數判斷算法

python高效的素數判斷算法

熱門標簽:淮安呼叫中心外呼系統如何 打印谷歌地圖標注 京華圖書館地圖標注 蘇州人工外呼系統軟件 佛山通用400電話申請 廣東旅游地圖標注 電話機器人貸款詐騙 電話外呼系統招商代理 看懂地圖標注方法

高效素數判斷算法

算法概述

此算法將其他博主對基本素數算法的一些改進進行了整合,其中主要整合了如下三條規則:

1.大于3的素數一定在6的倍數前一個或后一個(如素數37在36的后面)

2.要判斷n是否為素數,只需要讓n從2開始,依次除到根號n即可

3.在進行“讓n從2開始,依次除到根號n”過程中,若n除以2的余數不為0,可以直接跳過[2, sqrt(n)]里面的所有偶數

博主語文素養不高,表達不是很準確,在后面會對這三條規則進行解釋。

規則詳解

1.大于3的素數一定在6的倍數前一個或后一個(如素數37在36的后面)

  • 數學證明:

任意一個整數n可以表示為n = 6a + b ( 0 = b = 5, a >= 0 ),接下來依次講當n等于0到5的情況,以對此結論進行證明:

當n = 6a + 0 = 6a時,n有一個不為1及其本身的因數(素數判斷條件)6,此類數不為素數

當n = 6a + 2 = 2( 3a + 1 )時,n有一個不為1及其本身的因數(素數判斷條件)2,此類數不為素數

當n = 6a + 3 = 3( 2a + 1 )時,同上,有一因數3,此類數也不為素數

當n = 6a + 4 = 2( 3a + 2 )時,有一因數2, 此類數也不為素數

而當n = 6a + 1 或 n = 6a + 5時,不能絕對確定n是否為素數,需要考慮a的取值,顯然此時的數值n就是分布在6的倍數前一個或后一個

總結:大于3的素數一定分布在6的倍數前后

  • 此規則可以直接對素數進行初步篩選,不符合此規則的數可直接判定為非素數,直接減少了2/3的運算量,效率提高肉眼可見
  • 注意小于等于3的素數(2, 3)需要另外判斷

2.要判斷n是否為素數,只需要讓n從2開始,依次除到根號n即可

最基本的素數判斷方法是:讓n從2開始除,依次除到n - 1,如果每次除出來的結果余數皆不為0,那么此數n即為素數
實際上并不需要從除以[2, n - 1]區間的所有整數,只需除以[2, sqrt(n)]

3.在進行讓n除以[2, sqrt(n)]區間內的所有整數操作時,如果2不是n的一個因數,那么之后可以不判斷[2, sqrt(n)]區間的所有偶數

數學證明:當n/2除不盡時,n除以[2, sqrt(n)]區間內的所有偶數都除不盡

因此如果n不能將2除盡,那么之后的偶數一樣除不盡,可以直接不除
如果將2除盡了,n就不是素數,直接排除
如果沒有將2除盡,之后的計算量直接減半,肉眼可見的效率提升

算法時間復雜度復雜度

1.最基礎的算法:也就是讓n從2開始判斷,一直到n-1

若遇到的數是素數時,此時需要進行n-2次判斷
當遇到的不是素數時,要進行a(2an-2)次判斷
也就是說時間復雜度為n

2.改進后的算法:

根據規則二,判斷素數只要從[2,sqrt(n)]即可,此時復雜度為sqrt(n)
根據規則3,無論如何都可以不判斷2之后的偶數(當n大于2,當n除盡2時,n不為素數,之后不需要判斷,如果n除不盡2時,之后的偶數不要判斷)
假設n可以除盡2和不可以除盡2概率相等,那此時復雜度為sqrt(n)/4
根據規則一,只有1/3的數要進行判斷,此時復雜度為sqrt(n)/12
也就是說時間復雜度為sqrt(n)/12

在計算過程中做出的假設以及計算過程并不那么嚴謹,此結果僅供參考

Python代碼實現

def primeJudge(n):
 #先將數分為三類, 小于等于1,大于1小于5,和大于等于5
 #非整數統統不是素數
 if not isinstance(n, int): return False
 #小于1等于的都不是素數
 if n = 1: return False
 #大于1小于5
 elif n == 2 or n == 3: return True
 #大于等于5
 elif n >= 5:
  #先判斷是否在6的附近
  if n % 6 == 5 or n % 6 == 1:
   #再判斷是否可以將2除盡
   #可以的話不是素數
   if n % 2 == 0: return False
   else:
    #不可除盡2,直接跳過所有偶數
    for i in range(3, int(sqrt(n) + 1), 2):
     if n % i == 0: return False
    #經過篩選即為素數
    return True
  #不在6的附近不是素數
  else: return False

以上就是python高效的素數判斷算法的詳細內容,更多關于python素數算法的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • python實現線性回歸算法
  • Python實現七大查找算法的示例代碼
  • Python查找算法之折半查找算法的實現
  • Python查找算法之插補查找算法的實現
  • python實現ROA算子邊緣檢測算法
  • Python實現粒子群算法的示例
  • Python實現隨機爬山算法
  • python中K-means算法基礎知識點
  • python 圖像增強算法實現詳解
  • python入門之算法學習

標簽:中山 呼和浩特 股票 駐馬店 湖州 衡水 畢節 江蘇

巨人網絡通訊聲明:本文標題《python高效的素數判斷算法》,本文關鍵詞  python,高效,的,素數,判斷,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python高效的素數判斷算法》相關的同類信息!
  • 本頁收集關于python高效的素數判斷算法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    91麻豆精品秘密| 欧美成人免费网站| 亚洲综合在线五月| 亚洲欧美综合在线精品| 成人欧美一区二区三区黑人麻豆 | 成人午夜激情视频| 99精品国产热久久91蜜凸| 一本色道久久综合亚洲91| 色婷婷香蕉在线一区二区| 91精品国产综合久久香蕉的特点| 久久婷婷成人综合色| 久久久久久久久久久黄色| 亚洲国产精品精华液ab| 有码一区二区三区| 婷婷中文字幕一区三区| 国产麻豆精品theporn| 成人高清av在线| 欧美日韩一区二区不卡| 久久综合成人精品亚洲另类欧美| 中文字幕乱码亚洲精品一区 | 福利视频网站一区二区三区| 91在线看国产| 欧美一区二区三区免费在线看| 成人免费看视频| 色综合天天在线| 欧美精品国产精品| 精品国精品国产| 国产精品国产三级国产有无不卡| 亚洲丶国产丶欧美一区二区三区| 国内一区二区在线| 在线观看亚洲精品| 91精品一区二区三区久久久久久| 欧美电影精品一区二区| 亚洲视频一区在线| 欧美一级淫片007| 一区二区三区四区中文字幕| 麻豆国产91在线播放| 色偷偷一区二区三区| 精品成人在线观看| 国产精品午夜电影| 久久99精品国产麻豆不卡| 99精品一区二区| 欧美成人免费网站| 亚洲成av人综合在线观看| 不卡的av中国片| 精品国产欧美一区二区| 亚洲电影中文字幕在线观看| 成人激情综合网站| 精品国产乱码久久| 午夜精品爽啪视频| 色婷婷久久久久swag精品| 国产亚洲一区二区三区在线观看| 亚洲影院久久精品| 国产在线视频一区二区| 97国产一区二区| 国产精品毛片大码女人| 成人av手机在线观看| 337p日本欧洲亚洲大胆色噜噜| 久久99精品国产麻豆不卡| 成人免费毛片aaaaa**| 日韩欧美123| 美女视频一区在线观看| 不卡av在线网| 亚洲色图清纯唯美| 成人激情视频网站| **网站欧美大片在线观看| 成人免费视频视频在线观看免费| 国产亚洲欧美在线| 高清不卡在线观看| 国产午夜精品一区二区三区四区 | 91.麻豆视频| 丝袜亚洲另类欧美综合| 欧洲国内综合视频| 一区二区三区久久| 91蜜桃视频在线| 一区二区三区不卡在线观看| 欧美日韩综合在线免费观看| 日韩不卡手机在线v区| 制服丝袜中文字幕一区| 国内精品久久久久影院薰衣草| 久久嫩草精品久久久精品| jizzjizzjizz欧美| 一区二区三区四区av| 欧美日韩精品一区二区三区| 麻豆91小视频| 国产欧美精品区一区二区三区| 91在线精品一区二区| 亚洲综合激情网| 欧美高清精品3d| 久久99热99| 国产精品久久久久影视| 色婷婷国产精品| 天天av天天翘天天综合网色鬼国产 | 日韩欧美色综合| 国产精品一级黄| 国产精品视频第一区| 91一区二区三区在线播放| 亚洲国产色一区| 久久亚洲一级片| 欧美日韩中字一区| 国产a区久久久| 亚洲第一电影网| 精品福利在线导航| 91色乱码一区二区三区| 日本亚洲三级在线| 欧美极品xxx| 中文字幕欧美国产| 亚洲综合网站在线观看| 日韩三级视频在线观看| 粉嫩aⅴ一区二区三区四区五区| 亚洲福利视频一区| 欧美国产一区二区| 这里只有精品免费| 99久久国产综合色|国产精品| 日韩电影一区二区三区| 中文字幕亚洲区| 精品蜜桃在线看| 欧美主播一区二区三区| 国产福利不卡视频| 日本不卡视频一二三区| 日韩毛片精品高清免费| 欧美电影免费观看高清完整版| av一区二区三区四区| 日韩小视频在线观看专区| 不卡av在线网| 蜜桃av噜噜一区| 一二三四社区欧美黄| 中文字幕av不卡| 欧美成人三级电影在线| 欧美在线观看你懂的| 成人国产精品免费观看视频| 日本不卡不码高清免费观看| 亚洲精品成人少妇| 欧美激情中文字幕一区二区| 91精品国产欧美日韩| 国产a区久久久| 青青草国产成人av片免费| 国产精品久久777777| 国产亚洲精品bt天堂精选| 91精品国产综合久久久久久 | 国产精品国产三级国产三级人妇| 色欧美乱欧美15图片| 国产伦精品一区二区三区在线观看| 婷婷中文字幕综合| 一区二区在线观看免费| 欧美国产一区视频在线观看| 久久久99免费| 久久久噜噜噜久久人人看| 国产精品拍天天在线| 欧美精品三级在线观看| 色天天综合久久久久综合片| 色综合网色综合| 91福利在线导航| 欧美网站一区二区| 欧美亚洲图片小说| 欧美日韩在线免费视频| 欧美午夜精品久久久| 欧美日韩一区精品| 在线观看91av| 日韩欧美在线网站| 日韩精品一区二区三区三区免费 | 蜜桃精品视频在线| 蜜臀av一区二区在线免费观看| 欧美aaa在线| 国产真实精品久久二三区| 国产一区二区三区蝌蚪| 顶级嫩模精品视频在线看| 99久久久无码国产精品| 99国产精品国产精品毛片| av在线这里只有精品| 在线观看视频一区二区欧美日韩| 亚洲综合999| 日韩国产成人精品| 久久aⅴ国产欧美74aaa| 韩国av一区二区| 国产精品18久久久久久久久久久久| 五月激情综合网| 日本免费在线视频不卡一不卡二 | 日韩亚洲电影在线| 国产亚洲精品7777| 亚洲女性喷水在线观看一区| 国产清纯白嫩初高生在线观看91| 国产欧美日韩激情| 一区二区视频在线看| 日韩激情中文字幕| 国产高清在线精品| 91美女视频网站| 欧美日韩一区精品| 久久久久9999亚洲精品| 国产精品美女久久久久aⅴ| bt欧美亚洲午夜电影天堂| 95精品视频在线| 精品噜噜噜噜久久久久久久久试看| 久久视频一区二区| 一区二区三区精品在线观看| 日韩电影在线一区二区三区| 91蜜桃网址入口| 国产欧美一区二区在线| 五月天激情综合网| 国产精品一区二区黑丝|