נתונה הפעולה הבאה:
נתונה הפעולה הבאה:
public static void What(Queue<int> q)
{
int num1, num2;
bool found;
Queue<int> temp1 = new Queue<int>();
Queue<int> temp2 = new Queue<int>();
while(!q.IsEmpty())
{
num1 = q.Remove();
found = false;
while(!q.IsEmpty())
{
num2 = q.Remove();
if(num1 == num2)
found = true;
temp1.Insert(num2);
}
while(!temp1.IsEmpty())
q.Insert(temp1.Remove());
if(!found)
temp2.Insert(num1);
}
while(!temp2.IsEmpty())
q.Insert(temp2.Remove());
}
סעיף א
נתון תור q הבא (מהראש לזנב):
5, 8, 2, 5, 5, 7, 3
מה יהיה התוכן של התור q אחרי זימון הפעולה What(q) עבור התור q?
יש להראות מעקב אחרי ביצוע הפעולה.
סעיף ב
תנו דוגמה לתור q המכיל לפחות חמישה ערכים כך שתוכן התור לא ישתנה אחרי זימון הפעולה What(q). אם לא ניתן ליצור תור כזה, יש להסביר מדוע.
סעיף ג
תנו דוגמה לתור q המכיל לפחות חמישה ערכים כך שאחרי זימון הפעולה What(q) התור יהיה ריק. אם לא ניתן ליצור תור כזה, יש להסביר מדוע.
סעיף ד
מה מבצעת הפעולה What(q) עבור תור של מספרים שלמים q?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.