כתבו פעולה המקבלת מחסנית של מספרים שלמים ומחזירה את סכום האיברים הנמצאים במחסנית.
כותרת הפעולה:
public static int getSumOfStack(Stack<Integer> st)
כתבו פעולה המקבלת מחסנית של מספרים שלמים ומחזירה את הערך של המספר האחרון שנמצא במחסנית (את הערך הנמצא בתחתית המחסנית).
כותרת הפעולה:
public static int getStackLastValue(Stack<Integer> st)
שרשרת מחסניות היא שרשרת חוליות מסוג Node<Stack<Integer>>. כלומר, הערך (value) של כל חוליה הוא הפניה למחסנית של מספרים שלמים.
כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת מחסניות. הפעולה תחזיר תור של מספרים שלמים באופן הזה: עבור כל מחסנית הנמצאת בשרשרת מחסניות שהאורך שלה זוגי, יוכנס לתור ערך השווה לסכום האיברים במחסנית, ואילו עבור כל מחסנית שהאורך שלה הוא אי-זוגי הפעולה תכניס לתור את הערך הנמצא בתחתית המחסנית.
לדוגמה, עבור שרשרת המחסניות שלפניכם (chain, ארבע חוליות; לכל חוליה מחסנית מהראש למטה):
- חוליה 1:
5, 1, 3, 4, 7, 2(אורך 6, זוגי) - חוליה 2:
5, 1, 3(אורך 3, אי-זוגי) - חוליה 3:
3, 1, 5, 6(אורך 4, זוגי) - חוליה 4:
2, 1, 4, 4, 7(אורך 5, אי-זוגי)
הפעולה תחזיר תור חדש (מהראש לזנב): 22, 3, 15, 7
- עבור החוליה הראשונה יתקבל סכום של איברים כי אורך המחסנית זוגי. הסכום הוא 5+1+3+4+7+2 = 22
- עבור החוליה השנייה יתקבל מספר בתחתית המחסנית (3) כי אורך המחסנית אי-זוגי.
- עבור החוליה השלישית יתקבל סכום של איברים כי אורך המחסנית זוגי. הסכום הוא 3+1+5+6 = 15
- עבור החוליה הרביעית יתקבל מספר בתחתית המחסנית (7) כי אורך המחסנית אי-זוגי.
כותרת הפעולה:
public static Queue<Integer> doIt(Node<Stack<Integer>> chain)
מהי סיבוכיות זמן הריצה של הפעולה שכתבתם בסעיף ג'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.