![](/img/trans.png)
[英]Why based on these, the partition problem cannot be concluded that P = NP?
[英]Why is factoring in NP, but not in P?
因子:Gven一個整數N,找到整數1 <a,b <N,如果它們存在則N = ab,否則說N是素數。
我知道素數測試是在P中,但為什么不考慮因素?
這是我的算法:
For each a = 1 ... sqrt(N)
if(N % a == 0)
b = N/a
add (a,b) to the result
Endif
EndFor
它以O(sqrt(N))運行。
單個數值的輸入大小由其二進制表示的長度來度量。 確切地說,輸入數值n
的大小與log_2(n)
成比例。 因此,您的算法在指數時間內運行。
例如,假設我們使用您的算法計算N
個數。 如果N
是素數,則必須至少測試sqrt(N)
因子。 (或者,您可以為此計算素數表,但它仍然不是線性的)。
無論如何,你測試sqrt(N)
次。 但問題的大小定義為S=log2(N)
。 所以我們有N=2^S
因此它是一個sqrt(2^S)=2^(S/2)
,它是指數的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.