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

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

הוכיחו שחייבת להיות לפחות סדרה אחת של פעולות INSERT ו-EXTRACT-MAX (בסדר כלשהו), כך שלפחות אחת הפעולות מתבצעת בזמן .
העתק שאלה
שתף שאלה
סמן כחשוב
סמן כבוצע
האוניברסיטה הפתוחהמבחן סמסטר ב · 2023 · סמסטר ב
★★★★★
ערימותסיבוכיותמיוןחסם תחתון
הראו שאם שתי הפעולות רצות בזמן , ניתן למיין מספרים בזמן , בסתירה לחסם התחתון של מיון מבוסס השוואות.
הוכחה בשיטת הרדוקציה (הוכחה בשלילה):

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

נבנה אלגוריתם מיון:

1. בהינתן מערך , נכניס את כל האיברים ל- באמצעות פעולות INSERT.
2. נבצע
פעולות EXTRACT-MAX ונכניס את התוצאות למערך מהסוף להתחלה.

אלגוריתם זה ממיין את המערך.

ניתוח זמן:
  • שלב 1: פעולות INSERT, כל אחת , סה"כ .
  • שלב 2: פעולות EXTRACT-MAX, כל אחת , סה"כ .
  • זמן כולל: .


אבל ידוע שהחסם התחתון למיון מבוסס השוואות הוא . קיבלנו סתירה.

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