נתונה הפעולה:
public static void What(Stack<int> st, bool flag)
{
int x, y;
bool found;
Stack<int> temp1 = new Stack<int>();
Stack<int> temp2 = new Stack<int>();
while(!st.IsEmpty())
{
x = st.Pop();
found = false;
while(!st.IsEmpty())
{
y = st.Pop();
if(x > y == flag)
found = true;
temp1.Push(y);
}
while(!temp1.IsEmpty())
st.Push(temp1.Pop());
if(!found)
temp2.Push(x);
}
while(!temp2.IsEmpty())
st.Push(temp2.Pop());
}
(א)נתונה המחסנית st (8 נמצא בראש המחסנית, מהראש למטה):
`8, 9, 2, 9, 3, 10, 7, 10`
מה יהיה התוכן של המחסנית st אחרי זימון הפעולה `What(st, true)` עבור המחסנית st?
יש להראות מעקב אחרי ביצוע הפעולה.
`8, 9, 2, 9, 3, 10, 7, 10`
מה יהיה התוכן של המחסנית st אחרי זימון הפעולה `What(st, true)` עבור המחסנית st?
יש להראות מעקב אחרי ביצוע הפעולה.
(ב)תנו דוגמה למחסנית st המכילה לפחות חמישה ערכים שונים כך שתוכן המחסנית לא ישתנה אחרי זימון הפעולה `What(st, true)`.
אם לא ניתן ליצור מחסנית כזו, יש להסביר מדוע.
אם לא ניתן ליצור מחסנית כזו, יש להסביר מדוע.
(ג)תנו דוגמה למחסנית st המכילה לפחות חמישה ערכים שונים כך שאחרי זימון הפעולה `What(st, false)` במחסנית יישאר רק ערך אחד.
אם לא ניתן ליצור מחסנית כזו, יש להסביר מדוע.
אם לא ניתן ליצור מחסנית כזו, יש להסביר מדוע.
(ד)מה מבצעת הפעולה `What(Stack<int> st, bool flag)` באופן כללי?
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות
שאלו כאן — ותקבלו מענה מוסמך.
רוצים לתרגל אלפי שאלות נוספות?
המשיכו לתרגול מלא עם משוב אישי ←מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות