697. 数组的度

简介: 697. 数组的度

697. 数组的度

class Solution {
    public static int findShortestSubArray(int[] nums) {
       HashMap<Integer,Integer> map = new HashMap<>();
        for (int i = 0; i < nums.length; i++) {
                if(map.get(nums[i])==null){
                    map.put(nums[i],1);
                }
                else {
                    int value=map.get(nums[i]);
                    value++;
                    map.put(nums[i],value);
                }
        }
        Set<Integer> integers = map.keySet();
        int max=0;
        for (Integer key:integers){
            int value=map.get(key);
            if(max< value) max=value;
          //  System.out.println("key= "+key+" value= "+value);
        }
      //  System.out.println("max=" +max);
        ArrayList<Integer> list = new ArrayList<>();
        for (Integer key:integers){
            int value=map.get(key);
            if(max== value) list.add(key);
        }
     //   System.out.println("list = " +list);
        int ans=nums.length;
        for(Integer temp:list){
            System.out.println("temp= "+ temp);
            int len=0;
            int count=0;
            int start=0;
            for (int i = 0; i < nums.length; i++) {
                if(nums[i]==temp){
                    if(count==0){
                        start=i;
                     //   System.out.println("start= "+ start);
                    }
                    count++;
                    if(count==max){
                        len=i-start+1;
                    //    System.out.println("len="+len);
                        break;
                    }
                }
            }
            if(ans>len){
                ans=len;
            }
        }
        return ans;
    }
}


相关文章
|
编解码 API 数据安全/隐私保护
FFmpeg中overlay滤镜用法-水印及画中画
overlay 技术又称视频叠加技术。overlay 视频技术使用非常广泛,常见的例子有,电视屏幕右上角显示的电视台台标,以及画中画功能。画中画是指在一个大的视频播放窗口中还存在一个小播放窗口,两个窗口不同的视频内容同时播放。
2215 0
FFmpeg中overlay滤镜用法-水印及画中画
|
12月前
|
存储 JavaScript 前端开发
用 HTML + JavaScript DIY 渐进式延迟法定退休年龄测算器
用 HTML + JavaScript DIY 渐进式延迟法定退休年龄测算器
|
机器学习/深度学习 算法 Cloud Native
利用机器学习进行情感分析:从理论到实践云原生技术在现代软件开发中的应用与挑战
【5月更文挑战第31天】本文旨在深入探讨机器学习在情感分析领域的应用。首先,我们将解释什么是情感分析以及为什么它在今天的世界中如此重要。然后,我们将详细介绍几种主要的机器学习算法,包括决策树、随机森林和神经网络,以及它们如何被用于情感分析。最后,我们将通过一个实际的案例研究来展示这些理论在实践中的应用。
|
12月前
element table配合from实现双击可编辑表格
如何使用Element UI的el-table和el-form组件实现双击可编辑的表格。
263 0
|
存储 缓存 运维
函数计算产品使用问题之SD上安装了inpaint anything插件,但是不显示,该如何解决
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
868 0
|
网络协议 Java 关系型数据库
一篇文章彻底理解数据库的各种 JDBC 超时参数 2
一篇文章彻底理解数据库的各种 JDBC 超时参数
|
Java 关系型数据库 MySQL
基于Java的高校校园点餐系统
基于Java的高校校园点餐系统
|
缓存 负载均衡 网络协议
多协议标签交换(MPLS)
多协议标签交换(MPLS)
278 0
|
存储 运维 开发工具
emas
emas
493 0
|
消息中间件 Kafka
基于commons-pool2实现KafkaProducer池来提升kafka发送消息性能
基于commons-pool2实现KafkaProducer池来提升kafka发送消息性能
1762 0

热门文章

最新文章