אתם מתרגלים שאלה מתוך מה"ט מבני נתונים ותכנות מונחה עצמים — הנדסאי תוכנהמבחן 2024 · קיץ מועד ב · שאלה 6כל שאלות המבחן ←
מבנים לינארייםתורים

extractionNote: example queue diagrams are clean typeset boxes with directional arrows on both ends (paper's convention for depicting a queue) — HIGH confidence, digits are plain typeset text.

סעיף א

void one(Queue<Integer> q, int k)

כתבו פעולה המקבלת תור q של מספרים שלמים ומספר שלם וחיובי k. הפעולה "תכפיל" את התור באופן הבא: אם לפני זימון הפעולה התור q היה כך: [8,10,12,4] — אחרי זימון הפעולה (q,2) התור q יהיה כך: [8,8,10,10,12,12,4,4] — אחרי זימון הפעולה (q,3) התור q יהיה כך: [8,8,8,10,10,10,12,12,12,4,4,4].

exampleData: before: [8, 10, 12, 4]

afterK2: [8, 8, 10, 10, 12, 12, 4, 4]

afterK3: [8, 8, 8, 10, 10, 10, 12, 12, 12, 4, 4, 4]

סעיף ב

void two(Queue<Integer> q, int k)

כתבו פעולה המקבלת תור q של מספרים שלמים ומספר שלם וחיובי k. הפעולה "תכפיל" את התור בצורה הבאה: אם לפני זימון הפעולה התור q היה כך: [8,10,12,4] — אחרי ביצוע זימון הפעולה (q,2) התור q יהיה: [8,10,12,4,8,10,12,4] — אחרי ביצוע זימון הפעולה (q,3) התור q יהיה: [8,10,12,4,8,10,12,4,8,10,12,4].

afterK2: [8, 10, 12, 4, 8, 10, 12, 4]

afterK3: [8, 10, 12, 4, 8, 10, 12, 4, 8, 10, 12, 4]

סעיף ג

מהן הסיבוכיות של הפעולות שכתבתם בסעיפים א'-ב'? הסבירו את תשובתכם.

שאלות ותגובות על השאלה

🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות

שאלו כאן — ותקבלו מענה מוסמך.

🎓 מרצה לתכנות עונה כאן — תקבלו מענה מקצועי