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.

lock icon+15 בדיקות נסתרות בשליחה

challenge icon

שאלת המשך

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

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

מקרה 1

מקרה 2

מקרה 3

קלט

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

צפוי

7