تبديل القائمة
Toggle preferences menu
تبديل القائمة الشخصية
غير مسجل للدخول
سيكون عنوان الآيبي الخاص بك مرئيًا للعامة إذا قمت بإجراء أي تعديلات.

قسمة متكررة

يرجى إضافة وصلات داخلية للمقالات المتعلّقة بموضوع المقالة.
من أرابيكا، الموسوعة العربية الحرة
المزيد من اللغات

القسمة المتكررة (بالإنجليزية: 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

السرعة

π(2n/2)2n/2(n2)ln2

حيث π(x) هي الدالة المعدة للأعداد الأولية الأصغر من x.

مراجع

  1. ^ "معلومات عن قسمة متكررة على موقع mathworld.wolfram.com". mathworld.wolfram.com. مؤرشف من الأصل في 2018-10-22.

وصلات خارجية