为了账号安全,请及时绑定邮箱和手机立即绑定

找出一个数组中既不是最大数也不是最小的数

找出一个数组中既不是最大数也不是最小的数

亚努人 2016-03-03 19:43:39
class NotMM{ public void NotMM(int arr[]){ int mid = arr[0]; for(int i=0;i<arr.length-2;i++){ if(arr[i+1]>arr[i]&&arr[i+1]<arr[i+2]){ mid = arr[i+1]; }else if(arr[i+1]<arr[i]&&arr[i+1]>arr[i+2]){ mid = arr[i+1]; }else if(arr[i]<arr[i+1]&&arr[i]>arr[i+2]){ mid = arr[i]; }else if(arr[i]>arr[i+1]&&arr[i]<arr[i+2]){ mid = arr[i]; }else{ mid = arr[i+2]; } System.out.println(mid); } } } public class Ex1_4 { public static void main(String[] args) { NotMM m = new NotMM(); int arr[] = new int[]{2,4,6,1,7,5,3,8}; m.NotMM(arr); } }如上代码错误,请大侠帮忙改正解决,谢谢!
查看完整描述

4 回答

已采纳
?
慕大叔

TA贡献75条经验 获得超103个赞

import java.util.Arrays;
 
public class HelloWorld {
    public static void main(String[] args) {
        int[] arry1 = { 1, 1, 1, 4, 2, 3, 3, 7, 10};
 
        Arrays.sort(arry1);
        for(int i=1;i<arry1.length-1;i++)
        {
            System.out.println(arry1[i]);
        }
    }
 }


查看完整回答
2 反对 回复 2016-03-04
?
英语技能

TA贡献4条经验 获得超3个赞

为什么不先给数组排序,然后去掉和头尾相等的元素再输出呢?

查看完整回答
1 反对 回复 2016-03-04
?
Ricky_hrm

TA贡献4条经验 获得超1个赞

排序,然后输出minIndex和maxIndex之间的数字

查看完整回答
1 反对 回复 2016-03-04
?
一条小咸鱼

TA贡献457条经验 获得超255个赞

import java.util.Arrays;

public class HelloWorld {
    public static void main(String[] args) {
        int[] arry1 = { 1, 1, 1, 2, 3, 3, 3, 7, 10, 3, 3, 3, 3, 3 };

        Arrays.sort(arry1);
        System.out.println(Arrays.toString(arry1));

        for (int i : arry1) {
            if (i == arry1[0] || i == arry1[arry1.length - 1]) {
                continue;
            }
            System.out.print(i + " ");
        }
        System.out.println();
    }
}


查看完整回答
1 反对 回复 2016-03-04
  • 4 回答
  • 0 关注
  • 2710 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信