gpt4 book ai didi

algorithm - 我有一个新算法可以在线性时间内找到因子或素数——需要对此进行验证

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:31:24 25 4
gpt4 key购买 nike

我开发了一种算法来查找给定数字的因数。因此,它还有助于确定给定数字是否为质数。我觉得这是寻找因子或素数的最快算法。

此算法确定给定数字在 5*N 的时间范围内是否为素数(其中 N 是输入数字)。所以我希望我可以称其为线性时间算法。

我如何验证这是否是可用的最快算法?有人可以帮忙解决这个问题吗? (比 GNFS 和其他已知的更快)

算法如下

Input: A Number (whose factors is to be found)
Output: The two factor of the Number. If the one of the factor found is 1 then it can be concluded that the
Number is prime.

Integer N, mL, mR, r;
Integer temp1; // used for temporary data storage
mR = mL = square root of (N);
/*Check if perfect square*/
temp1 = mL * mR;
if temp1 equals N then
{
r = 0; //answer is found
End;
}
mR = N/mL; (have the value of mL less than mR)
r = N%mL;
while r not equals 0 do
{
mL = mL-1;
r = r+ mR;

temp1 = r/mL;
mR = mR + temp1;
r = r%mL;
}
End; //mR and mL has answer

请提供您的意见。如需了解更多信息,请随时与我联系。

谢谢,哈里什 http://randomoneness.blogspot.com/2011/09/algorithm-to-find-factors-or-primes-in.html

最佳答案

“线性时间”是指与输入数据的长度 成正比的时间:在这种情况下,您要分解的数字中的位数。您的算法不会在线性时间或任何接近它的时间内运行,恐怕它比许多现有的因式分解算法慢得多。 (包括,例如,GNFS。)

关于algorithm - 我有一个新算法可以在线性时间内找到因子或素数——需要对此进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5581040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com