سوال ۶۵ کنکور ارشد مهندسی کامپیوتر ۱۴۰۴
اهمیت
۰/۵
فرض کنید یک ساختار داده جدید به نام لیست اولویتدار پویا (Dynamic Priority List) دارید. این ساختار داده دارای ساختاری از اعمال زیر است که باید بهطور کارا پشتیبانی شوند. اعمالی که روی آن باید بهطور کارا پشتیبانی شوند به صورت زیر هستند:
- insert(x, p): افزودن یک عنصر با کلید x و اولویت p به ساختار.
- DeleteMax(): حذف کردن عنصری که دارای بیشترین اولویت است.
- FindMedian(): یافتن عنصری که اولویت آن میانه است.
- IncreasePriority(x): افزایش اولویت عنصر x.
با توجه به اینکه این اعمال باید بهطور کارا انجام شوند، کدامیک از ساختارهای داده زیر برای پیادهسازی این ساختار داده انتزاعی مناسبتر است؟
پاسخ صحیح: گزینهٔ D — ترکیب یک Hash Table با یک Balanced Binary Search Tree.
پاسخ تشریحی
List the requirements and the cost each candidate pays for them.
ادامهٔ پاسخ تشریحی ویژهٔ مشترکان است.
مشاهدهٔ پاسخ کامل#abstract-data-type#balanced-bst#hash-table#order-statistics#priority-queue#find-median