考试记录

发布时间:2022-06-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了考试记录脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

转换问题

  1. Integerlist转为int[]
public int[] intersect(int[] nums1, int[] nums2) {
    List<Integer> list = new ArrayList<>();
    // list.add();
    return list;
    
    return list.stream().mapToInt(Integer::intValue).toArray();
}

处理巧妙问题

  • 巧妙利用递归简化问题

    class Solution {
        public int[] intersect(int[] nums1, int[] nums2) {
            if (nums1.length > nums2.length) {
                return intersect(nums2, nums1);
            }
            //处理nums1.length > nums2.length
        }
    }
    
  • 考虑好边界问题

    public static int findShortestSubArray(int[] nums) {
        if (nums.length == 1){
            return 1;
        }
        return ans;
    }
    

Map集合

初始化Map集合

  • 添加key出现的个数

    Map<Integer,Integer> map = new HashMap<>();
    for (int i = 0; i < nums.length; i++) {
        map.put(nums[i], map.getOrDefault(nums[i], 0) + 1);
    }
    

Map集合通过value获取key

  • 循环法

    //唯一值
    private <K, V> K getKeyByLoop(Map<K, V> map, V value) {
      for (Map.Entry<K, V> entry : map.entrySet()) {
        if (Objects.equals(entry.getValue(), value)) {
          return entry.getKey();
        }
      }
      return null;
    }
    //多个值
    private <K, V> Set<K> getKeysByLoop(Map<K, V> map, V value) {
      Set<K> set = Sets.newHashSet();
      for (Map.Entry<K, V> entry : map.entrySet()) {
        if (Objects.equals(entry.getValue(), value)) {
          set.add(entry.getKey());
        }
      }
      return set;
    }
    
  • Stream方法

    private <K, V> Set<K> getKeysByStream(Map<K, V> map, V value) {
      return map.entrySet()
        .stream()
        .filter(kvEntry -> Objects.equals(kvEntry.getValue(), value))
        .map(Map.Entry::getKey)
        .collect(Collectors.toSet());
    }
    

脚本宝典总结

以上是脚本宝典为你收集整理的考试记录全部内容,希望文章能够帮你解决考试记录所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: