القسمة المتكررة (Trial division) هي الخوارزمية الأكثر صعوبة من أجل تفكيكك عدد ما إلى جداء أعداد أولية ولكنها أسهل خوارزمية من حيث الفهم.[1]
الطريقة
def trial_division(n): """Return a list of the prime factors for a natural number.""" if n <2: return [] primes = prime_sieve(int(n**0.5) + 1) prime_factors = [] for p in primes: if p*p> n: break while n % p == 0: prime_factors.append(p) n //= p if n> 1: prime_factors.append(n) return prime_factors
السرعة
حيث هي الدالة المعدة للأعداد الأولية الأصغر من x.
مراجع
- "معلومات عن قسمة متكررة على موقع mathworld.wolfram.com". mathworld.wolfram.com. مؤرشف من الأصل في 22 أكتوبر 2018.