תרגול מדעי המחשב

ספירת איברים בתור

בינוני Java

המשימה

כתוב פעולה שמקבלת תור של מספרים שלמים ומחזירה כמה איברים יש בו,
כשבסוף הפעולה התור חוזר למצבו המקורי ובאותו סדר.

דוגמה:
  תור [1,2,3] (1 בראש)  →  3, והתור נשאר [1,2,3]

הנחיות:
• רמז נחמד: בתור, אם מוציאים איבר מהראש ומכניסים אותו מיד לסוף,
  אחרי סיבוב שלם התור חוזר בדיוק לסדרו המקורי. אין צורך בתור עזר.
• remove על תור ריק זורק שגיאת ריצה — בדוק isEmpty לפני.

ממשק מבני הנתונים כבר מצורף למשימה.

```ds:queue
{"title":"התור שבדוגמה — front משמאל, rear מימין","items":["1","2","3"]}
```

קוד הפתיחה

public class Main {

    public static int countQueue(Queue<Integer> q) {
        // כתוב את הפתרון כאן — התור חייב לחזור למצבו המקורי
        return 0;
    }

    public static void main(String[] args) {
        Queue<Integer> q = new Queue<Integer>();
        q.insert(1);
        q.insert(2);
        q.insert(3);

        System.out.println(q);             // [1,2,3]
        System.out.println(countQueue(q)); // 3
        System.out.println(q);             // [1,2,3]  — ללא שינוי

        System.out.println(countQueue(new Queue<Integer>()));  // 0
    }
}

כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.

התרגיל הבא היפוך תור בעזרת מחסנית
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון — כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות בדיקה חיצוני.