求数组中最大和次大
时间: 2024-02-24 16:54:27 浏览: 77
python求最大连续子数组的和
可以使用一次遍历的方法来求解数组中的最大值和次大值。具体的做法是,使用两个变量来分别记录当前的最大值和次大值,遍历数组时如果当前元素比最大值大,则将最大值赋值为该元素,同时将次大值更新为原最大值。如果当前元素比次大值大但比最大值小,则将次大值更新为该元素。最后返回最大值和次大值即可。
以下是使用 Python 语言实现的代码:
```python
def find_max_two(numbers):
max_num = numbers[0]
second_max = float('-inf')
for num in numbers:
if num > max_num:
second_max = max_num
max_num = num
elif num > second_max:
second_max = num
return max_num, second_max
```
其中 `float('-inf')` 表示负无穷,用来初始化次大值。函数的参数 `numbers` 是一个列表,代表输入的数组。函数返回一个元组,包含最大值和次大值。
阅读全文