Menu
CoddyTech

Second Largest Number

ניתנת לך רשימה של מספרים שלמים nums. החזר את הערך השני בגודלו מבין הערכים הייחודיים: הערך הגדול ביותר שקטן ממש מהמקסימום. ערכים יכולים לחזור על עצמם, ולכן עבור [5, 5, 3] התשובה היא 3, ולא 5. הרשימה תמיד מכילה לפחות שני ערכים שונים.

פונקציה

secondLargest(nums: integer-array) → integer
numsinteger-array
רשימת המספרים השלמים, עם לפחות שני ערכים שונים
מחזירהinteger
הערך הגדול ביותר שקטן מהערך המרבי

אילוצים

  • 2 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums מכיל לפחות שני ערכים שונים.

דוגמאות

קלט
nums = [4, 9, 2, 7, 9]
פלט
7
הסבר
הערך המרבי הוא 9. הוא מופיע פעמיים, אבל עותק שני של הערך המרבי לא נחשב, ולכן התשובה היא הערך הבא אחריו, 7.
challenge icon

שאלת המשך

האם תוכל להחזיר במעבר אחד את הערך השלישי בגודלו, ללא כפילויות, באמצעות שלושה משתנים וללא מיון?

איפוס הקוד
def secondLargest(nums):
    # כתבו כאן את הקוד

בדיקה #1

בדיקה #2

בדיקה #3

ארגומנט

nums = [4, 9, 2, 7, 9]

הפלט הצפוי

7