《質數》判斷質數(較快的方法C )

2021-10-25 01:16:18 字數 578 閱讀 6352

to be honest,我感覺我也刷了1,200道題了,真是有的題刷了一次又一次,但是還是存在會的還是會,不會的還是不會。因而我就思考是不是我的做題模式出現了問題。下面展示一下我之前的做題風格,

哎,還是走高三的老路,就是刷題,不總結,不分類,只追求數量。為了改善這種情況,我決定做好總結與分類,以求有所進步。

bool isprime(int a) 

return 1;

}

思路解析:規律就是把大於等於5數按%6分類,會有餘數為0 ,1,2,3,4,5共6種情況,這六種情況中,0,2,3,4是不行的,有可以整除的數,只有1,5滿足, 那麼就對餘數為1,5的這一類數記為a類進行判斷,只要他們不被比自己小的a類的數整除,就可以說明這個數是質數。時間複雜度(sqrt(n)/3)相當於只用判斷小於sqrt(n)的1/3的數。

做事之前先思考大多數情況下都會很省時間!

判斷質數與篩質數

一 判定質數 要判斷乙個數是不是質數,只需遍歷小於等於它的所有數,如果它能被除了1和本身之外的數整除,那麼它就不是質數。很簡單,暴力列舉,如下 1 bool is prime intx 2 但是還可以優化,對於乙個數 x 它有乙個約數 d 那麼 frac 也是 x 的約數,所以我們只需要列舉較小的乙...

mysql 判斷質數 質數(素數)判斷演算法總結

1.原始演算法 就是將質數的定義翻譯成 就要看i是否能被小於它的sqrt i 的數整除。時間複雜度o n sqrt n 空間複雜度o m m為質數個數。2.質數篩法 定義bool is prime n 1 初始化為1 奇數為1,偶數為0 已經2為最小的質數,將2的倍數的布林值都設為false,如此類...

判斷質數的幾種方法

根據維基百科定義,質數 prime number 又稱素數,指在大於1的自然數中,除了1和此整數自身外,無法被其他自然數整除的數 也可定義為只有1和本身兩個因數的數 比1大但不是素數的數稱為合數。1和0既非素數也非合數。質數在公鑰加密演算法 如rsa 中有重要的地位。下邊將會介紹幾種較為常見的判斷質...