Menu
CoddyTech

Second Largest Number

整数のリスト nums が与えられます。2 番目に大きい異なる値、つまり最大値より厳密に小さい最大の値を返してください。値は重複することがあるため、[5, 5, 3] の場合、答えは 5 ではなく 3 です。リストには常に異なる値が少なくとも 2 つ含まれています。

関数

secondLargest(nums: integer-array) → integer
numsinteger-array
少なくとも2つの異なる値を含む整数のリスト
戻り値integer
最大値より小さい値の中で最も大きい値

制約

  • 2 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • numsには、少なくとも2つの異なる値が含まれています。

例

入力
nums = [4, 9, 2, 7, 9]
出力
7
説明
最大値は9です。これは2回出現しますが、最大値の2つ目は数えないため、答えは次に大きい値の7です。

lock icon提出時に隠しテスト+15件

challenge icon

発展問題

ソートせずに、3つの変数を使って1回の走査で3番目に大きい異なる値を返せますか?

コードをリセット
def secondLargest(nums):
    # ここにコードを書いてください
テストケース

ケース1

ケース2

ケース3

入力

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

期待値

7