输出数组中的第⼆⼤值,第⼆⼩值。
时间: 2024-03-26 22:35:46 浏览: 20
假设我们有一个整数类型的数组 `arr`,可以使用以下代码找到第二大值和第二小值:
```python
# 找到第二大值
max1 = max2 = float('-inf')
for num in arr:
if num > max1:
max2 = max1
max1 = num
elif num > max2 and num < max1:
max2 = num
print("第二大值为:", max2)
# 找到第二小值
min1 = min2 = float('inf')
for num in arr:
if num < min1:
min2 = min1
min1 = num
elif num < min2 and num > min1:
min2 = num
print("第二小值为:", min2)
```
首先,我们用 `float('-inf')` 和 `float('inf')` 初始化了最大值和最小值。然后,我们遍历数组中的每个元素,并将其与最大值和最小值进行比较。如果一个元素大于最大值,则将原来的最大值赋给第二大值,并将该元素赋给最大值;如果一个元素小于最小值,则将原来的最小值赋给第二小值,并将该元素赋给最小值。最终,我们输出第二大值和第二小值。
相关问题
输出数组中的第⼆⼤值,第⼆⼩值。java
假设我们有一个整型数组 `arr`,可以使用以下 Java 代码找到第二大值和第二小值:
```java
// 找到第二大值
int max1 = Integer.MIN_VALUE;
int max2 = Integer.MIN_VALUE;
for (int num : arr) {
if (num > max1) {
max2 = max1;
max1 = num;
} else if (num > max2 && num < max1) {
max2 = num;
}
}
System.out.println("第二大值为:" + max2);
// 找到第二小值
int min1 = Integer.MAX_VALUE;
int min2 = Integer.MAX_VALUE;
for (int num : arr) {
if (num < min1) {
min2 = min1;
min1 = num;
} else if (num < min2 && num > min1) {
min2 = num;
}
}
System.out.println("第二小值为:" + min2);
```
首先,我们用 `Integer.MIN_VALUE` 和 `Integer.MAX_VALUE` 初始化了最大值和最小值。然后,我们遍历数组中的每个元素,并将其与最大值和最小值进行比较。如果一个元素大于最大值,则将原来的最大值赋给第二大值,并将该元素赋给最大值;如果一个元素小于最小值,则将原来的最小值赋给第二小值,并将该元素赋给最小值。最终,我们输出第二大值和第二小值。
输出数组中的最⼤值、最⼩值、以及平均值、第⼆⼤值,第⼆⼩值java
假设我们有一个整型数组 `arr`,可以使用以下 Java 代码输出最大值、最小值、平均值、第二大值和第二小值:
```java
// 定义变量
int max1 = Integer.MIN_VALUE, max2 = Integer.MIN_VALUE;
int min1 = Integer.MAX_VALUE, min2 = Integer.MAX_VALUE;
int sum = 0;
// 遍历数组
for (int num : arr) {
// 计算最大值和第二大值
if (num > max1) {
max2 = max1;
max1 = num;
} else if (num > max2 && num < max1) {
max2 = num;
}
// 计算最小值和第二小值
if (num < min1) {
min2 = min1;
min1 = num;
} else if (num < min2 && num > min1) {
min2 = num;
}
// 计算数组元素的总和
sum += num;
}
// 计算平均值
double avg = (double) sum / arr.length;
// 输出结果
System.out.println("最大值为:" + max1);
System.out.println("第二大值为:" + max2);
System.out.println("最小值为:" + min1);
System.out.println("第二小值为:" + min2);
System.out.println("平均值为:" + avg);
```
首先,我们定义了变量 `max1` 和 `max2` 分别表示最大值和第二大值,以及变量 `min1` 和 `min2` 分别表示最小值和第二小值,并用 `Integer.MIN_VALUE` 和 `Integer.MAX_VALUE` 进行初始化。
然后,我们遍历数组中的每个元素,计算最大值和第二大值,以及最小值和第二小值,并将数组元素的总和累加到变量 `sum` 中。
最后,我们用数组元素的总和除以数组的长度计算平均值,并输出最大值、最小值、平均值、第二大值和第二小值。
需要注意的是,如果数组中的元素个数小于 2,那么无法计算第二大值和第二小值,因为它们不存在。在实际应用中,需要根据具体情况进行判断和处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)