天天看点

697. Degree of an Array 数组的度

数组的度

采用数组这个来记住一个数的出现次数,以及第一次出现和最后一次出现次数。

package leetcode;

import java.util.HashMap;
public class mm {
     public static int findShortestSubArray(int[] nums) {

         HashMap<Integer,int[]> map = new HashMap<>();
         HashMap<Integer,Integer> map1 = new HashMap<>();
         int number;
         int Maxtimes=;//记录最大出现次数。
         for(int i=;i<nums.length;i++) {
             number=nums[i];
             if(map.containsKey(number)) {
                 //最后一个
                 map.get(number)[]=i;
                 map.get(number)[]++;
                 map.put(number, map.get(number));

                 //始终记录最大的

                 if(Maxtimes< map.get(number)[]) {
                    map1.put(map.get(number)[], number);
                    Maxtimes=map.get(number)[];
                 }

             }else {
                 //初始位置
                    int []numInfor= new int[];
                    //[2]次数
                    numInfor[]=;

                    //[0]位置
                    numInfor[]=i;

                    map.put(number, numInfor);

             }
         }
         number=map1.get(Maxtimes);
         return map.get(number)[]-map.get(number)[]+;

        }
     public static void main(String[] args) {
        int[] nums= {,,,,,,};
        int temp=findShortestSubArray(nums);
        System.out.println(temp);
    }
}