"מרחק" של ערך בשרשרת = סכום המרחקים הקטנים ביותר של מופע שלו משני קצוות השרשרת (לא בהכרח אותו מופע). דוגמה: השרשרת 4,9,3,7,9,9,7,7,2,9 — מרחק של 7 הוא 5, מרחק של 3 הוא 9.
"מרחק" של ערך בשרשרת = סכום המרחקים הקטנים ביותר של מופע שלו משני קצוות השרשרת (לא בהכרח אותו מופע). דוגמה: השרשרת 4,9,3,7,9,9,7,7,2,9 — מרחק של 7 הוא 5, מרחק של 3 הוא 9.
השרשרת lst שבדוגמאות: 4,9,3,7,9,9,7,7,2,9 (10 חוליות). דוגמה 1: ה"מרחק" של 7 הוא 5 (3 מתחילת השרשרת ו-2 עד לסוף). דוגמה 2: ה"מרחק" של 3 הוא 9 (2 מתחילת השרשרת ו-7 עד לסוף).
lst → 4 → 9 → 3 → 7 → 9 → 9 → 7 → 7 → 2 → 9 → null
מקום: 1 2 3 4 5 6 7 8 9 10
כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת חוליות ומספר num, ומחזירה את ה"מרחק" של המספר num. אם num לא נמצא בשרשרת, הפעולה תחזיר 1-.
public static int distance(Node<Integer> lst, int num)
כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת חוליות ומחזירה את המספר בעל ה"מרחק" הקטן ביותר. עבור השרשרת שבדוגמה הפעולה תחזיר 9 (ה"מרחק" של הערך 9 הוא הקטן ביותר).
public static int minDistanceValue(Node<Integer> lst)
מהן סיבוכיות הפעולות distance ו-minDistanceValue מסעיפים א' ו-ב'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.