Ray-Yan 2016-03-03 11:40 采纳率: 100%
浏览 1345
已采纳

一个简单的小算法求助

找出一个数组中既不是最大的数也不是最小的数,我的java代码如下(错误的):

 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);
    }
}

请大侠改正,用简单的算法,谢谢!

  • 写回答

8条回答

  • 东风玖哥 2016-03-04 03:22
    关注

    排序之后掐头去尾,然后随机选一个

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置