请你找出并返回数组中 任一 既不是 最小值 也不是 最大值 的数字,如果不存在这样的数字,返回 -1 。java
时间: 2024-03-24 16:39:59 浏览: 55
JAVA得到数组中最大值和最小值的简单实例
5星 · 资源好评率100%
好的,你可以使用以下 Java 代码实现:
```java
public int findMiddle(int[] nums) {
if (nums.length < 3) {
return -1;
}
Arrays.sort(nums);
for (int i = 1; i < nums.length - 1; i++) {
if (nums[i] != nums[0] && nums[i] != nums[nums.length - 1]) {
return nums[i];
}
}
return -1;
}
```
这个函数接收一个整数数组 `nums` 作为输入,返回一个既不是最小值也不是最大值的数字。如果数组中不存在这样的数字,返回 -1。
我们先判断数组长度是否小于3,如果是,那么不存在符合条件的数字,直接返回 -1。
如果数组长度大于等于3,我们对数组进行排序,然后遍历数组中除去第一个和最后一个元素的部分,找到一个既不是最小值也不是最大值的数字,返回即可。如果都没有找到这样的数字,返回 -1。
希望这个函数能够帮助你解决问题。
阅读全文