在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)論入門:如何快速求出與n互素的數(shù)

算法與數(shù)據(jù)結(jié)構(gòu) ? 來源:小K算法 ? 作者:小K算法 ? 2022-09-30 11:41 ? 次閱讀

01 故事起源

一個(gè)數(shù)n,在小于等于n的正整數(shù)[1,n]中,與n互素的數(shù)有多少個(gè)呢?

(注:x與n互素,說明x與n的最大公約數(shù)為1)

777f439a-406f-11ed-b1c7-dac502259ad0.jpg

02 分析

最直觀的方法當(dāng)然就是直接枚舉所有小于n的數(shù),再通過求最大公約數(shù)判斷即可。

但當(dāng)n很大的時(shí)候,這個(gè)方法就不優(yōu)了。可能有同學(xué)已經(jīng)發(fā)現(xiàn)了,這個(gè)不就是歐拉函數(shù)的定義嗎,所以今天我們從數(shù)學(xué)上來分析如何快速求解。

03 歐拉函數(shù)

歐拉函數(shù)定義如下:

77ba6a06-406f-11ed-b1c7-dac502259ad0.jpg

歐拉函數(shù)具有幾個(gè)優(yōu)秀的性質(zhì),先介紹幾個(gè)常用的數(shù)學(xué)符號(hào),便于描述。

77d96f14-406f-11ed-b1c7-dac502259ad0.jpg

3.1 性質(zhì)1

當(dāng)n為素?cái)?shù)時(shí),很明顯phi(n)=n-1,因?yàn)樗行∮趎的數(shù)都與n互素。

78056db2-406f-11ed-b1c7-dac502259ad0.jpg

當(dāng)n為某個(gè)素?cái)?shù)p的冪次時(shí),即n=p^k,則與n不互素的一定為p的倍數(shù)。 [1,n]中p的倍數(shù)一共有p^(k-1)個(gè),所以互素的即為總數(shù)減去不互素的個(gè)數(shù)。

782f80a2-406f-11ed-b1c7-dac502259ad0.jpg

3. 性質(zhì)2

歐拉函數(shù)是一個(gè)積性函數(shù),當(dāng)整數(shù)m,n互素時(shí),phi(mn)=phi(m)*phi(n)。

78650240-406f-11ed-b1c7-dac502259ad0.jpg

這個(gè)性質(zhì)的證明需要用到同余和集合相關(guān)的定理,有點(diǎn)復(fù)雜,以后寫同余相關(guān)的知識(shí)再專門分享如何證明,現(xiàn)在就先記住這個(gè)性質(zhì)就行了。

04 計(jì)算

有了這2個(gè)性質(zhì)就可以推導(dǎo)出歐拉乘積公式。

789251c8-406f-11ed-b1c7-dac502259ad0.jpg

接下來就只需要考慮如何對(duì)n進(jìn)行質(zhì)因素分解。 最簡單的方式可以直接枚舉,先找到最小的質(zhì)因子p1,然后除去所有p1因子,再對(duì)剩余的數(shù)繼續(xù)分解。

78cfd980-406f-11ed-b1c7-dac502259ad0.jpg

05 代碼實(shí)現(xiàn)


inteuler_phi(intn){
intm=sqrt(n+0.5); intans=n;
for(inti=2;i<=?m;?++i)?{ ????
if(n==1)break;
if(n%i==0){
ans=ans/i*(i-1);
while(n%i==0)n/=i;
} } if(n>1)ans=ans/n*(n-1);
returnans; }

06 總結(jié)
現(xiàn)在的算法復(fù)雜度主要取決于尋找第一個(gè)質(zhì)因子,枚舉并不是最快的方法,更快的方法是基于費(fèi)馬小定理,miller_rabin,pollard_rho等原理的隨機(jī)化算法。 數(shù)論是一個(gè)大類,在很多地方都有重要的應(yīng)用,而素?cái)?shù)在密碼學(xué)中應(yīng)用也很廣泛,今天分享的算是數(shù)論入門的一個(gè)介紹,后面還會(huì)分享更多有關(guān)數(shù)論的知識(shí)。
編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4631

    瀏覽量

    93423

原文標(biāo)題:如何快速求出與n互素的數(shù)有多少個(gè)?

文章出處:【微信號(hào):TheAlgorithm,微信公眾號(hào):算法與數(shù)據(jù)結(jié)構(gòu)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CK-RX65N快速入門指南

    CK-RX65N快速入門指南
    發(fā)表于 01-11 18:48 ?0次下載
    CK-RX65<b class='flag-5'>N</b> – <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RZ/N1 目標(biāo)管理快速入門指南

    RZ/N1 目標(biāo)管理快速入門指南
    發(fā)表于 03-14 20:07 ?0次下載
    RZ/<b class='flag-5'>N</b>1 目標(biāo)管理<b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RZ/N1 目標(biāo) CANopen 快速入門指南

    RZ/N1 目標(biāo) CANopen 快速入門指南
    發(fā)表于 03-14 20:07 ?0次下載
    RZ/<b class='flag-5'>N</b>1 目標(biāo) CANopen <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RZ/N1 目標(biāo) PROFINET 快速入門指南

    RZ/N1 目標(biāo) PROFINET 快速入門指南
    發(fā)表于 03-15 20:26 ?1次下載
    RZ/<b class='flag-5'>N</b>1 目標(biāo) PROFINET <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RX65N Envision Kit 快速入門指南

    RX65N Envision Kit 快速入門指南
    發(fā)表于 03-21 20:00 ?1次下載
    RX65<b class='flag-5'>N</b> Envision Kit <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    YRDKRX62N 快速入門指南(IAR Embedded Workbench)

    YRDKRX62N 快速入門指南 (IAR Embedded Workbench)
    發(fā)表于 04-12 19:14 ?0次下載
    YRDKRX62<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南(IAR Embedded Workbench)

    YRDKRX62N 快速入門指南(NO-RTOS)

    YRDKRX62N 快速入門指南 (NO-RTOS)
    發(fā)表于 04-12 19:14 ?0次下載
    YRDKRX62<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南(NO-RTOS)

    YRDKRX62N 快速入門指南(Micrium)

    YRDKRX62N 快速入門指南 (Micrium)
    發(fā)表于 04-12 19:14 ?0次下載
    YRDKRX62<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南(Micrium)

    YRDKRX63N 快速入門指南 Rev.3.03

    YRDKRX63N 快速入門指南 Rev.3.03
    發(fā)表于 05-15 19:29 ?0次下載
    YRDKRX63<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南 Rev.3.03

    RZ/N1 GOAL POWERLINK 快速入門指南

    RZ/N1 GOAL POWERLINK 快速入門指南
    發(fā)表于 07-05 20:32 ?0次下載
    RZ/<b class='flag-5'>N</b>1 GOAL POWERLINK <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RZ/N1 目標(biāo)管理快速入門指南

    RZ/N1 目標(biāo)管理快速入門指南
    發(fā)表于 07-05 20:33 ?0次下載
    RZ/<b class='flag-5'>N</b>1 目標(biāo)管理<b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    RZ/N1D CODESYS 快速入門指南

    RZ/N1D CODESYS 快速入門指南
    發(fā)表于 07-07 19:25 ?1次下載
    RZ/<b class='flag-5'>N</b>1D CODESYS <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南

    YRDKRX63N 快速入門指南 Rev.3.03

    YRDKRX63N 快速入門指南 Rev.3.03
    發(fā)表于 07-11 20:41 ?0次下載
    YRDKRX63<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南 Rev.3.03

    YRDKRX62N 快速入門指南(IAR Embedded Workbench)

    YRDKRX62N 快速入門指南 (IAR Embedded Workbench)
    發(fā)表于 08-04 18:30 ?1次下載
    YRDKRX62<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南(IAR Embedded Workbench)

    YRDKRX62N 快速入門指南(NO-RTOS)

    YRDKRX62N 快速入門指南 (NO-RTOS)
    發(fā)表于 08-04 18:30 ?0次下載
    YRDKRX62<b class='flag-5'>N</b> <b class='flag-5'>快速</b><b class='flag-5'>入門</b>指南(NO-RTOS)
    主站蜘蛛池模板: bt磁力在线搜索 | 特黄一级 | 一级片在线观看免费 | 天天操天天干天天舔 | 婷婷六月丁 | 深夜释放自己vlog糖心旧版本 | 开心激情五月婷婷 | 五月天婷婷免费视频 | 明日花在线观看 | 国产一区二区三区免费大片天美 | 国产伦精品一区二区三区网站 | 天天插夜夜爽 | 国产亚洲一区二区三区在线 | 人人射人人射 | 欧美成人生活片 | 激情福利网 | 欧美激情αv一区二区三区 欧美激情第一欧美在线 | 日本高清在线3344www | 国产午夜人做人视频羞羞 | 亚洲1卡二卡3卡四卡不卡 | 婷婷六月激情在线综合激情 | xxxxxxxxx18免费视频 | 日本加勒比一区 | 四虎4hu影库永久地址 | 伊人网视频 | 一区二区三区视频在线观看 | 日本黄色网址免费 | 资源新版在线天堂 | 天天爱夜夜操 | 麻豆色哟哟网站 | 欧美人与物另类 | 精品一区二区在线观看 | 毛片官网 | 5252色欧美在线激情 | 天堂网www在线资源网 | 最新欧美一级视频 | 天天爽夜夜操 | 成年男人永久免费看片 | 免费在线欧美 | 特黄三级 | 国产骚b|