שאלת מבחן במבוא למדעי המחשב - הטכניון 2020 - סיבוכיות זמן
שאלה 1 (25 נקודות):
א. (8 נקודות) חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
ב. (9 נקודות): חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
ג. (8 נקודות): חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
א. (8 נקודות) חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
ב. (9 נקודות): חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
ג. (8 נקודות): חשבו את סיבוכיות הזמן והמקום של הפונקציה המוגדרת בקטע הקוד הבא, כפונקציה של . אין צורך לפרט שיקוליכם. חובה לפשט את הביטוי ככל שניתן.
סיבוכיות זמן: ____________ סיבוכיות מקום: ____________
העתק שאלה
שתף שאלה
סמן כחשוב
סמן כבוצע
הטכניוןמועד א2020סמסטר ב
★★★★★
סיבוכיות זמןסיבוכיות מקוםרקורסיהלולאותמעקב אחר קוד
לכל תת-שאלה, יש לקבוע תחילה כמה פעמים הלולאה/רקורסיה מתבצעת כפונקציה של , ולאחר מכן לחשב את עלות כל איטרציה/קריאה בנפרד. שימו לב שתנאי העצירה של הלולאה ב-f1 מגדיר מספר איטרציות שהוא , ולא לוגריתמי.
א. ניתוח f1 ו-g
פונקציה g: מחשבת , כלומר .
לולאת f1: מתחיל ב-1 ומוכפל ב-2 בכל איטרציה. אחרי איטרציות, . תנאי העצירה: , כלומר , כלומר . הלולאה רצה עבור , סה"כ איטרציות.
זמן: בכל איטרציה , קריאה ל- עולה . סך הזמן:
מקום: עומק הרקורסיה של עבור הוא . מכיוון שהקריאות ל- אינן מקביליות, סיבוכיות מקום: .
---
ב. ניתוח f2 ו-g2
g2(n, m): בכל קריאה רקורסיבית: , . אחרי קריאות: , . עצירה כאשר :
עומק הרקורסיה: .
ערך בבסיס הרקורסיה:
הלולאה בבסיס רצה פעמים.
זמן: כל קריאה לא-בסיסית עולה , ויש כאלו; הבסיס עולה :
מקום: עומק מחסנית הרקורסיה הוא , כל מסגרת :
סיבוכיות זמן: , סיבוכיות מקום:
---
ג. ניתוח f3 (לולאות מקוננות)
לולאה חיצונית: מ-0 עד , צעד 3 — איטרציות.
לולאה פנימית: מ- עד , צעד 2. כאשר , הלולאה אינה מתבצעת כלל. לכן תרומה ממשית רק עבור :
מקום: אין רקורסיה, רק משתנים בודדים .
סיבוכיות זמן: , סיבוכיות מקום:
פונקציה g: מחשבת , כלומר .
לולאת f1: מתחיל ב-1 ומוכפל ב-2 בכל איטרציה. אחרי איטרציות, . תנאי העצירה: , כלומר , כלומר . הלולאה רצה עבור , סה"כ איטרציות.
זמן: בכל איטרציה , קריאה ל- עולה . סך הזמן:
מקום: עומק הרקורסיה של עבור הוא . מכיוון שהקריאות ל- אינן מקביליות, סיבוכיות מקום: .
---
ב. ניתוח f2 ו-g2
g2(n, m): בכל קריאה רקורסיבית: , . אחרי קריאות: , . עצירה כאשר :
עומק הרקורסיה: .
ערך בבסיס הרקורסיה:
הלולאה בבסיס רצה פעמים.
זמן: כל קריאה לא-בסיסית עולה , ויש כאלו; הבסיס עולה :
מקום: עומק מחסנית הרקורסיה הוא , כל מסגרת :
סיבוכיות זמן: , סיבוכיות מקום:
---
ג. ניתוח f3 (לולאות מקוננות)
לולאה חיצונית: מ-0 עד , צעד 3 — איטרציות.
לולאה פנימית: מ- עד , צעד 2. כאשר , הלולאה אינה מתבצעת כלל. לכן תרומה ממשית רק עבור :
מקום: אין רקורסיה, רק משתנים בודדים .
סיבוכיות זמן: , סיבוכיות מקום: