פעולה המקבלת מחסנית של מספרים שלמים, ומסדרת אותה מחדש כך שאיברים הגדולים מהממוצע יישמרו בחלק העליון, ואיברים קטנים או שווים לממוצע יישמרו בחלק התחתון.
פעולה המקבלת מחסנית של מספרים שלמים, ומסדרת אותה מחדש כך שאיברים הגדולים מהממוצע יישמרו בחלק העליון, ואיברים קטנים או שווים לממוצע יישמרו בחלק התחתון.
דוגמה: מחסנית 5,7,10,2,12,6 (ראש..תחתית); ממוצע=7=(5+7+10+2+12+6)/6. אחרי הפעולה: 10,12,7,6,2,5 (ראש..תחתית) — 10,12 (גדולים מ-7) בחלק העליון; 7,6,2,5 (קטנים או שווים ל-7) בחלק התחתון. הסדר בתוך כל חלק אינו משנה (לפי הערת המחוון).
לפני (ראש..תחתית): 5, 7, 10, 2, 12, 6
אחרי (ראש..תחתית): 10, 12, 7, 6, 2, 5
כתבו פעולה המקבלת מחסנית של מספרים שלמים. הפעולה תמיין מחדש את האיברים במחסנית לפי הסדר הבא: איברים הגדולים מממוצע האיברים במחסנית יישמרו בחלק העליון של המחסנית, ואילו איברים קטנים או שווים לממוצע האיברים במחסנית יישמרו בחלק התחתון.
public static void reorderByAverage(Stack<Integer> s)
מהי הסיבוכיות של הפעולה שכתבתם בסעיף א'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.