package HashTab; import java.util.HashMap; import java.util.Map; public class p594 { public int findLHS(int[] nums) { int ans=0; if(nums==null||nums.length<=1)return ans; HashMap<Integer,Integer> map=new HashMap();//键为值,值为个数 for(int i=0;i<nums.length;i++){ map.put(nums[i],map.getOrDefault(nums[i],0)+1); } for (int key: map.keySet()) { if (map.containsKey(key + 1)) ans = Math.max(ans, map.get(key) + map.get(key + 1)); } return ans; } }
运行结果: