כתיבת שיטת whatEff

נתונה השיטה הסטטית what, המקבלת כפרמטר מערך חד-ממדי המלא במספרים שלמים:

java
Loading...

כתבו שיטה סטטית בשם whatEff שתבצע את מה שמבצעת השיטה what אבל בצורה יעילה יותר.

השיטה צריכה להיות יעילה ככל הניתן, גם מבחינת סיבוכיות הזמן וגם מבחינת סיבוכיות המקום.

דוגמה 1:
קלט:
a = [1, 4, 2, 7, 3]
פלט:
6

הסבר: ההפרש הגדול ביותר הוא בין 7 ל-1, שהוא 6

דוגמה 2:
קלט:
a = [5, 5, 5, 5]
פלט:
0

הסבר: כל המספרים זהים ולכן ההפרש המקסימלי הוא 0

דוגמה 3:
קלט:
a = [1, 2, 3, 4, 5]
פלט:
4

הסבר: ההפרש הגדול ביותר הוא בין 5 ל-1

דוגמה 4:
קלט:
a = [5, 4, 3, 2, 1]
פלט:
0

הסבר: המערך בסדר יורד ולכן אין הפרשים חיוביים

דוגמה 5:
קלט:
a = [-2, 1, -1, 3, 0]
פלט:
5

הסבר: ההפרש הגדול ביותר הוא בין 3 ל--2

דוגמה 6:
קלט:
a = [1]
פלט:
0

הסבר: במערך של איבר בודד ההפרש המקסימלי הוא 0

דוגמה 7:
קלט:
a = []
פלט:
0

הסבר: במערך ריק מוחזר 0

דוגמה 8:
קלט:
a = [-5, -3, -1, -2, -4]
פלט:
4

הסבר: ההפרש הגדול ביותר הוא בין -1 ל--5

Loading...
נשמרLn 1, Col 1

קלט:

a = [1, 4, 2, 7, 3]

הפלט המבוקש:

6