方法1: ソートして2番目の数を取得する
- 配列を昇順にソートします。
- ソートされた配列の2番目の要素を取得します。
def find_second_largest(arr):
sorted_arr = sorted(arr)
return sorted_arr[-2]
方法2: 最大値を見つけて、それ以外の最大値を探す
- 配列内の最大値を見つけます。
- 最大値以外の数の中で最大値を見つけます。
def find_second_largest(arr):
max_value = max(arr)
second_largest = float('-inf')
for num in arr:
if num != max_value and num > second_largest:
second_largest = num
return second_largest
方法3: 最大値と2番目の最大値を追跡する
- 配列を1つずつ走査し、最大値と2番目の最大値を追跡します。
def find_second_largest(arr):
max_value = float('-inf')
second_largest = float('-inf')
for num in arr:
if num > max_value:
second_largest = max_value
max_value = num
elif num > second_largest and num != max_value:
second_largest = num
return second_largest
これらはいくつかの一般的な方法であり、配列内の2番目に大きな数を見つけるためのコード例です。他にもさまざまなアプローチがありますが、ここではいくつかの基本的な方法を紹介しました。