המשימה
כתוב פעולה שמקבלת תור של מספרים שלמים ומחזירה כמה איברים יש בו,
כשבסוף הפעולה התור חוזר למצבו המקורי ובאותו סדר.
דוגמה:
תור [1,2,3] (1 בראש) → 3, והתור נשאר [1,2,3]
הנחיות:
• רמז נחמד: בתור, אם מוציאים איבר מהראש ומכניסים אותו מיד לסוף,
אחרי סיבוב שלם התור חוזר בדיוק לסדרו המקורי. אין צורך בתור עזר.
• remove על תור ריק זורק שגיאת ריצה — בדוק isEmpty לפני.
ממשק מבני הנתונים כבר מצורף למשימה.
```ds:queue
{"title":"התור שבדוגמה — front משמאל, rear מימין","items":["1","2","3"]}
```
קוד הפתיחה
using System;
class Program {
static int CountQueue(Queue<int> q) {
// כתוב את הפתרון כאן — התור חייב לחזור למצבו המקורי
return 0;
}
static void Main() {
Queue<int> q = new Queue<int>();
q.Insert(1);
q.Insert(2);
q.Insert(3);
Console.WriteLine(q); // [1,2,3]
Console.WriteLine(CountQueue(q)); // 3
Console.WriteLine(q); // [1,2,3] — ללא שינוי
Console.WriteLine(CountQueue(new Queue<int>())); // 0
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.