标签:max 应该 value test sts end public nbsp star
import java.util.Arrays ;
class Solution {
public int findShortestSubArray(int[] nums) {
int size = nums.length;
int max=-1;
for(int i =0;i<size ;i++){
if(nums[i]>max){
max=nums[i];
}
}
int[][] mtx =new int[max+1][3];
for(int i=0;i<size;i++){
int value = nums[i];
int index = i+1;
int[] startEndCount = mtx[value];
if(startEndCount[0]==0){
startEndCount[0]=index;
}else{
startEndCount[1]=index;
}
startEndCount[2]= startEndCount[2]+1;
}
int maxCount=-1;
int returnSize = 0;
for(int i=0;i<max+1;i++){
if(mtx[i][2]>maxCount){
maxCount=mtx[i][2];
returnSize = mtx[i][1]-mtx[i][0]+1;
}else if(mtx[i][2]==maxCount&&(mtx[i][1]-mtx[i][0]+1)<returnSize){
returnSize= mtx[i][1]-mtx[i][0]+1;
}
}
return returnSize<=0?1:returnSize;
}
}
标签:max 应该 value test sts end public nbsp star
原文地址:https://www.cnblogs.com/leodaxin/p/11253480.html