如何快速因式分解 分解質(zhì)因數(shù)的算法?
分解質(zhì)因數(shù)的算法?1. 素?cái)?shù)表,試著從小到大除法,直到當(dāng)前素?cái)?shù)的平方大于試著除法后剩下的數(shù)這樣,優(yōu)化后的效率會(huì)更高,至少在long int的范圍內(nèi)剛才寫的:for(kindp=0,I=0 Prime[
分解質(zhì)因數(shù)的算法?
1. 素?cái)?shù)表,試著從小到大除法,直到當(dāng)前素?cái)?shù)的平方大于試著除法后剩下的數(shù)
這樣,優(yōu)化后的效率會(huì)更高,至少在long int的范圍內(nèi)
剛才寫的:
for(kindp=0,I=0 Prime[I]*Prime[I
]if(Y%Prime[I]==0)
{PP[kindp]=prime[i
]ep[kindp]=0/*倍當(dāng)前素?cái)?shù)因子*/
而(y%prime[i
==0)
{
y/=prime[i
]ep[kindp
}
]kindp
}
if(y!=1)/*處理最大素?cái)?shù)*/
{
kindp
ep[kindp]=1
PP[kindp]=y
}]以下是一種更高級(jí)的方法,但當(dāng)要求不高時(shí),第一種方法更好。波拉德的Rho方法
3。波拉德的p-1方法
4。Lenstra的橢圓曲線因式分解法
5。二次六因式分解法