主題
Search

直接搜尋因式分解


直接搜尋因式分解是最簡單(也最簡單粗暴)的素因數分解演算法。它透過系統地執行試除法來搜尋一個數的因數,通常使用遞增的數字序列。通常排除小素數的倍數以減少試除數的數量,但有時直接包含它們比排除它們所需的時間更快。直接搜尋因式分解非常低效,只能用於相當小的數字。

當對數字 n 使用此方法時,只需測試直到 |_sqrt(n)_|因數(其中 |_x_|向下取整函式)。這是正確的,因為如果所有小於此值的整數都已嘗試過,那麼

 n/(|_sqrt(n)_|+1)<sqrt(n).
(1)

換句話說,所有可能的因數都已經測試過它們的餘因子。同樣成立的是,當 n 的最小因數 p 大於 >RadicalBox[n, 3] 時,其餘因子 m (使得 n=pm)必須是素數。為了證明這一點,假設最小的 p 大於 >RadicalBox[n, 3]。如果 m=ab,那麼 ab 可以假設的最小值是 p。但是這樣

 n=pm=pab>=p^3>n,
(2)

這不可能成立。因此,m 必須是素數,所以

 n=p_1p_2.
(3)

另請參閱

素因數分解演算法, 試除法

使用 探索

請引用為

韋斯坦, 埃裡克·W. "直接搜尋因式分解。" 來自 Web 資源。 https://mathworld.tw/DirectSearchFactorization.html

主題分類