פייתון/פייתון גרסה 3/סיבוכיות/סיבוכיות זמן/סיבוכיות ריבועית: הבדלים בין גרסאות בדף

מתוך testwiki
קפיצה לניווט קפיצה לחיפוש
imported>Mathreturn
אין תקציר עריכה
 
(אין הבדלים)

גרסה אחרונה מ־12:10, 1 באוגוסט 2018

דוגמא 1

נתבונן על הדוגמה הבאה:

def findmax(lst):
    sum = 0

    for i in lst:
        if i < 10:
            for j in range(len(lst)):
                sum+ = j

    return sum

במקרה זה, הלולאה הראשונה והתנאי במקרה הרעה ביותר ירוצו n פעמים, כאורך הרשימה.

באופן דומה במקרה השני, הלולאה השנייה, תרוץ n פעמים בהכרח ולכן סה"כ התכנית תרוץ o(n*n)=o(n2).

דוגמה 2

תבנית:להשלים

דוגמה עם while  

דוגמה 3

מיון בחירה רץ o(n2).

{{#lsth: פייתון/פייתון גרסה 3/מיון בחירה|דוגמה לקידוד}}