Q24 LeetCode383 赎金信
同Q23 只需要先将随机字符串挨个存入hashmap中,
然后循环遍历给定字符串,只要最后hashmap中size为0,即可返回true
1 class Solution { 2 public boolean canConstruct(String ransomNote, String magazine) { 3 4 HashMap<Character,Integer> smap=new HashMap<>(); 5 6 for(int i=0;i<ransomNote.length();i++){ 7 smap.put(ransomNote.charAt(i),smap.getOrDefault(ransomNote.charAt(i),0)+1); 8 } 9 int vaild=smap.size(); 10 for(int i=0;i<magazine.length();i++){ 11 char c = magazine.charAt(i); 12 if(smap.containsKey(c)){ 13 smap.put(c,smap.getOrDefault(c,0)-1); 14 if(smap.get(c)==0){ 15 smap.remove(c); 16 } 17 } 18 19 } 20 return smap.size()==0 ? true:false; 21 22 } 23 }

浙公网安备 33010602011771号