Complexité en temps d'un code de rayon de primalité

Sylvain
Modifié (September 2022) dans Informatique théorique
Bonjour
J'aimerais avoir une idée de la complexité en temps du code suivant en Python 3.
from sympy import *
from sympy.ntheory.factor_ import primeomega

for n in range(60, 10000):
    m2 = True
    m3 = True
    mr2 = True
    mr3 = True
    gmin = 0

    if n % 2 != 0: m2 = False
    if n % 3 != 0: m3 = False
    if m2 == True and m3 == True:
        gmin = 1
    elif m2 == True and m3 == False:
        gmin = 3
    elif m2 == False and m3 == True:
        gmin = 2
    else: gmin = 6
    
    r = gmin

    if isprime(n): r = 0

    while isprime(n+r) == False or isprime(n-r) == False:
        
        if r % 2 != 0: mr2 == False
        if r % 3 != 0: mr3 == False

        if m2 != mr2 and m3 != mr3:
            r += ((primeomega(n+r)+primeomega(n-r)-2)+abs(primeomega(n+r)-primeomega(n-r)))/2 * gmin
        else: r += (2-n % 2)*gmin
        print(r)
Merci d'avance.

Réponses

  • Étant donné qu'il n'y aucun paramètre qui varie, la question est mal posée.
    Si, en fait, tu veux avoir une estimation théorique du temps de calcul, il nous faudrait savoir comment sont codées les deux fonctions que tu utilises, à savoir "isprime" (que je connais) et "primeomega" (que je ne connais pas).
Connectez-vous ou Inscrivez-vous pour répondre.