אתם מתרגלים שאלה מתוך בגרות מדעי המחשב — מבני נתונים (שאלון 899271)מבחן 2025 · קיץ מועד א · שאלה 2כל שאלות המבחן ←
מבנים לינארייםתורים

public static bool Mmm (Queue<int> q, int z) { q.Insert (0); int num = q.Head(); int y = 0; while (q.Head() > 0) { if (y < z) { if (q.Head() == num) { y++; } else { num = q.Head(); y = 1; } } q.Insert (q.Remove()); } q.Remove(); return y == z; }

public static int What (Queue<int> q, int n) { if (Mmm (q, n)) return n; return What (q, n - 1); }


עמוד 4 (Java) ועמוד 6 (C#): התור q הנתון לסעיף א

queue q (head on the LEFT, tail on the RIGHT, as the labels ראש התור / סוף התור are printed): | 1 | 3 | 1 | 1 | 1 | 2 | head -> 1, 3, 1, 1, 1, 2 <- tail


עמוד 4 (Java) ועמוד 6 (C#): טבלת המעקב הריקה של סעיף א(1)

טבלת המעקב הריקה של סעיף א (עמודות כפי שהן מודפסות, משמאל לימין על הדף):

התור qnumyy < zq.head() == num

עמוד 5 (Java) ועמוד 7 (C#): התור q הנתון לסעיף ב (זהה לתור של סעיף א)

queue q (head on the LEFT, tail on the RIGHT, as the labels ראש התור / סוף התור are printed): | 1 | 3 | 1 | 1 | 1 | 2 | head -> 1, 3, 1, 1, 1, 2 <- tail


עמוד 5 (Java) ועמוד 7 (C#): טבלת המעקב המוצעת של סעיף ב(1)

טבלת המעקב המוצעת של סעיף ב (עמודות כפי שהן מודפסות, משמאל לימין על הדף):

התור q שמתקבל בפעולההערך n שמתקבל בפעולהmmm (q, n) == trueערך מוחזר
סעיף א(1)

לפניכם הפעולה mmm , המקבלת תור – q ובו מספרים הגדולים מ־0 , ומספר שלם z – הגדול מ־0 . [קוד mmm/Mmm ב-code_context] נתון תור q מטיפוס שלם: [התור ב-figures] עקבו בעזרת טבלת המעקב שלפניכם אחר הפעולה mmm (q , 4) , וכתבו מה הפעולה מחזירה.

Mmm (q, 4)

סעיף א(2)

הסבירו מה הפעולה mmm עושה.

סעיף א(3)

מהי סיבוכיות זמן הריצה של הפעולה mmm ? נמקו את תשובתכם.

סעיף ב(1)

לפניכם הפעולה what , המקבלת תור – q ובו מספרים הגדולים מ־0 , ואת גודל התור – n . [קוד what/What ב-code_context] נתון תור – q מטיפוס שלם: [התור ב-figures] עקבו אחר הפעולה what (q, 6) , וכתבו מה הפעולה מחזירה (אין צורך לעקוב אחר הפעולה mmm). המעקב יכלול בכל קריאה את הערכים של q , n ואת הערך המוחזר. לפניכם הצעה לטבלת מעקב (אין חובה להשתמש בטבלה זו).

What (q, 6)

סעיף ב(2)

הסבירו מה הפעולה what עושה.

סעיף ב(3)

מהי סיבוכיות זמן הריצה של הפעולה what ? נמקו את תשובתכם.

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

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

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

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