1.使用HashMap记录键值对
2.定义HashMap方式
HashMap<Integer, Integer> map = new HashMap<>();
3.map.put(key,value);输入键值对
4.map.getOrDefault(value,0);获取值,如果没有默认为0;
5.map.get(key)取值
6.map.size()键值对长度
7.map.replace(key,value)替换key的value值
1 class Solution { 2 public int totalFruit(int[] fruits) { 3 HashMap<Integer, Integer> map = new HashMap<>(); 4 int n=fruits.length; 5 int sum=0; 6 int left=0; 7 for(int right=0;right<n;right++){ 8 map.put(fruits[right],map.getOrDefault(fruits[right],0)+1); 9 while(map.size()>2){ 10 map.replace(fruits[left],map.get(fruits[left])-1); 11 if(map.get(fruits[left])==0){ 12 map.remove(fruits[left]); 13 } 14 left++; 15 } 16 sum=Math.max(sum,right-left+1); 17 } 18 return sum; 19 } 20 }
标签:map,HashMap,int,sum,fruits,Q12,LeetCode904,成篮,left From: https://www.cnblogs.com/cff1/p/18236269