ساختمان داده

حل تشریحی سوالات ساختمان داده - کنکور دکتری مهندسی کامپیوتر 1399

سوالات ساختمان داده

10 سوال
1.

فرض کنید متنی به‌طول n در اختیار داریم. در خصوص گزاره‌های زیر کدام گزینه صحیح است؟

الف) کد هافمن یک کاراکتر یک بیتی است، اگر و فقط اگر تعداد تکرار آن کارکتر کمتر از جمع تعداد تکرار بقیه کارکترها نباشد.

ب) اگر کاراکتری بیشترین تکرار را داشته باشد و تعداد تکرارهای آن بیش از باشد، آنگاه کد هافمن آن کاراکتر تک بیتی است.

1)

(الف) درست و (ب) درست

2)

(الف) نادرست و (ب) درست

3)

(الف) درست و (ب) نادرست

4)

(الف) نادرست و (ب) نادرست

2.

یک گراف کامل 10 رأسی را در نظر بگیرید، که رأس‌های آن از 1 تا 10 شماره‌گذاری شده‌اند. فرض کنید وزن یال بین i و j برابر i+j است. آخرین یال درخت پوشای کمینه که توسط الگوریتم پریم با شروع از رأس 10 اضافه می‌شود، چه وزنی دارد؟

1)

9

2)

10

3)

11

4)

17

3.

کدام الگوریتم مرتب‌سازی در بهترین حالت، زمان اجرای کمتری دارد؟

1)

Insertion Sort

2)

Selection Sort

3)

Merge Sort

4)

Quick Sort

4.

برای پیاده‌سازی یک لیست پیوندی حلقوی، کدام ساختمان داده قابل استفاده است؟

1)

پشته

2)

صف

3)

صف و پشته

4)

هیچ‌یک از صف و پشته

5.

در پیاده‌سازی متعارف جستجوی عمق اول و جستجوی سطح اول، به‌ترتیب از کدام داده ساختارها استفاده می‌شود؟

1)

پشته و صف

2)

صف و پشته

3)

پشته و لیست

4)

لیست و پشته

6.

مسئله جمع زیر مجموعه بدین شکل تعریف می‌شود: یک مجموعه از اعداد مثبت به همراه عدد W داده شده است. آیا زیر مجموعه‌ای از S پیدا می‌شود که جمع اعضای آن W شود؟

برای حل این مسئله به‌روش برنامه‌ریزی پویا یک آرایه دو بعدی تعریف می‌کنیم که برابر True است. اگر زیر مجموعه‌ای از وجود داشته باشد که جمع اعضای آن j شود، در این خصوص کدام رابطه درست است؟

1)

2)

3)

4)

7.

برای گراف بدون جهت G با n رأس دو مسئله زیر را در نظر بگیرید:

  • مسئله A : آیا G یک زیر مجموعه مستقل 4 رأسی دارد؟
  • مسئله B : آیا G یک زیرمجموعه مستقل n-4 رأسی دارد؟

در خصوص این دو مسئله کدام مورد درست است؟

1)

مسئله A عضو کلاس P و مسئله B عضو کلاس NP-Complete است.

2)

مسئله A عضو کلاس NP-Complete و مسئله B عضو کلاس P است.

3)

هر دو مسئله عضو کلاس NP-Complete هستند.

4)

هر دو مسئله عضو کلاس P هستند.

8.

فرض کنید G=(V,E) یک گراف بدون جهت و گراف یک زیرگراف G است. یال‌های G را بدین شکل وزن‌دار می‌کنیم: اگر باشد، وزن آن را صفر و در غیر اینصورت 1 می‌گذاریم. از رأس دلخواه الگوریتم دایکسترا را برای محاسبه کوتاهترین مسیر به بقیه رئوس اجرا می‌کنیم. کدام مسئله را می‌توان با استفاده از طول کوتاهترین مسیرهای محاسبه شده، حل کرد؟

1)

آیا درخت است؟

2)

آیا همبند است؟

3)

آیا تشکیل خوشه می‌دهد؟

4)

تعداد یال‌ها در کوتاهترین مسیر از v به بقیه رئوس چند است؟

9.

فرض کنید در داخل یک درخت دودویی جستجو، اعداد 1 تا 1000 ذخیره شده‌اند و ما می‌خواهیم دنبال عدد 365 بگردیم. کدام دنباله (از چپ به راست) نمی‌تواند مسیر جستجو باشد؟

1)

4,401,389,221,268,384,383,280,365

2)

926,222,913,246,900,260,364,365

3)

4,254,403,400,332,346,399,365

4)

927,204,913,242,914,247,365

10.

فرض کنید یک آرایه مرتب از n عدد در اختیار داریم. به ازای یک k داده شده، می‌خواهیم دو عدد a و b از آرایه را پیدا کنیم که شود. سریع‌ترین الگوریتم برای حل این مسئله دارای چه مرتبه زمانی است؟

1)

O(n)

2)

3)

O(logn)

4)

O(nlogn)