Verwechselt mit der Antwort auf die Best / Worst-Case-Zeit für die Python-Funktion

Dies ist ein kurzes Problem aus dem Kurs Einführung in die Informatik und Programmierung mit Python.

def program1(x):
    total = 0
    for i in range(1000):
        total += i

    while x > 0:
        x -= 1
        total += x

    return total

Frage: Wie viele Schritte sind im besten Fall erforderlich, um Programm 1 auszuführen? Drücken Sie Ihre Antwort in Form von n aus, der Größe der Eingabe x

Antworten : Bester Fall: 3003 und schlechtester Fall: 5n + 3003

Ich bin mit der Antwort 3003 verwechselt, weil meiner Meinung nach der beste Fall des Problems wäre, wenn x = -1 und andere Anweisungen ausgeführt werden, die eine konstante Zeitdauer haben .hence Anweisung

total =0   // takes a constant amount of time 1

for i in range(1000):
    total += i        // takes 1000*1 amount of time


return total   // takes constant of time 1 

Daher sollte die Antwort 1000 + 2 = 1002 sein

Jede Hilfe mit der richtigen Erklärung wird sehr geschätzt.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage