跳到主要内容

写一个Python函数找出一个整数数组中,第二大的数 ?

参考答案:

可以使用以下Python函数来找出整数数组中的第二大的数:

def find_second_largest(nums):
    if len(nums) < 2:
        return None

    largest = float('-inf')
    second_largest = float('-inf')

    for num in nums:
        if num > largest:
            second_largest = largest
            largest = num
        elif num > second_largest and num != largest:
            second_largest = num

    return second_largest

这个函数首先检查数组的长度是否小于2,如果是,则返回None,因为无法找到第二大的数。然后,它初始化两个变量largestsecond_largest为负无穷大。

接下来,它遍历数组中的每个数字。如果当前数字大于largest,则将其赋值给second_largest,并将largest更新为当前数字。如果当前数字大于second_largest但小于largest,则将其赋值给second_largest

最后,函数返回second_largest,即数组中的第二大的数。

请注意,此函数假设数组中至少有两个不同的数字。如果数组中有重复的数字,则函数将返回None,因为无法确定哪个数字是第二大的。