def loopy_loop(n):
for i in range(n):
for j in range(i):
if j*j > i:
break
Dabei ist n eine positive Ganzzahl.Laufzeit dieser Python-Funktion
Sagen wir, ich nehme n = 10
Die äußere Schleife läuft n-mal sicher (n = 10 mal) Die innere Schleife auf der Grundlage der Werte laufen.
n = 0, ist die innere Schleife läuft 0 mal
n = 1, die innere Schleife läuft einmal
n = 2, die innere Schleife ausgeführt wird 3 mal
n = 3, die innere Schleife läuft 4 Mal (bis j = 3 und 9> 3)
n = 4, die innere Schleife läuft 4 mal so gut
und so weiter, bis n = 9, wo es 5 mal läuft
Ich habe Schwierigkeiten alles zusammen setzen die Laufzeit mit O-Notation auszudrücken. Gibt es einen Set-Algorithmus, der mir für dieses spezifische Code-Snippet helfen könnte?
danke für die Lösung. Ich hätte erwähnen sollen, dass das mit Stift und Papier allein gemacht werden muss, ohne Computer. – RonaldB
Sie haben die Stift-und Papier-Version oben, –
Ist die Idee, im Grunde ein paar Zahlen einstecken, und sehen, wie viele Schritte die Funktion dauert für jede Zahl abzuschließen? – RonaldB