prepd.

שאלת מבחן במבני נתונים ומבוא לאלגוריתמים - האוניברסיטה הפתוחה 2025 - מחסניות

נגדיר "סופר מחסנית" (Super Stack), כמבנה המכיל מספרים טבעיים, תומך בכל פעולות המחסנית, ובנוסף תומך בפעולה :

-
: אתחול מבנה ריק, בזמן .
-
: מחזיר אם המבנה ריק, בזמן .
-
: הכנסת המספר למבנה , בזמן .
-
: הוצאת המספר שהוכנס אחרון למבנה והחזרתו, בזמן .
-
: הוצאת כל המספרים שבמבנה והחזרתם, החל מהאיבר שהוכנס אחרון ועד לאיבר שהוכנס ראשון (מבין האיברים הנמצאים במבנה), בזמן .

הציעו מימוש למבנה "סופר מחסנית", שבו זמן הריצה הכולל של כל סדרה של
פעולות תהיה . נמקו את חישוב זמן הריצה.

נתון שכל סדרה של
פעולות מתחילה עם מבנה ריק, ושהמפתחות ייחודיים (אין חזרות).

יש לכתוב רק את שגרת
.
העתק שאלה
שתף שאלה
סמן כחשוב
סמן כבוצע
שאלה חוזרתהאוניברסיטה הפתוחהמבחן סמסטר ב2025 סמסטר ב | 2025 סמסטר ב
מחסניותניתוח מופחתמבני נתונים
השתמשו במחסנית רגילה . הפעולה פשוט מוציאה את כל האיברים בלולאה. חישבו את העלות הכוללת של פעולות באמצעות ניתוח מופחת (amortized analysis).
רעיון: נחזיק מחסנית רגילה . הפעולות זהות לפעולות על המחסנית, מלבד הפעולה .

**
:**
כל עוד S.Empty() == FALSE בצע:
    S.Pop()


ניתוח זמן ריצה:


עבור פעולה בודדת,
במקרה הגרוע תהיה ליניארית.

עבור
פעולות: כיוון שמתחילים ממבנה ריק, עבור פעולות יהיו ב- לכל היותר איברים סה"כ (כי מכניסה איבר אחד בכל פעם). לכן כלל פעולות יבצעו לכל היותר פעמים (כי כל איבר שהוכנס יוצא לכל היותר פעם אחת).

סה"כ: כל
הפעולות (, , , וכו') עולות .
שאלת מבחן במבני נתונים ומבוא לאלגוריתמים - האוניברסיטה הפתוחה 2025 | prepd.