いくつかのインタビューの質問を練習していますが、hashMap の値を比較する方法がわかりません。前提は、ひも付きのマガジンを持っていることです。身代金メモを作成するには、雑誌から適切な数の文字を切り取る必要があります。文字と文字の出現回数の両方をhashMapに追加できましたが、2つのhashMapを比較して十分な文字があるかどうかを判断するにはどうすればよいですか。
雑誌 = {g=2, =14, d=2, e=2, a=4, n=1, o=5, l=4, m=1, .=1, k=1, I=2, h=2, i=6, w=1, T=1, u=1, t=2, s=3, r=1, y=2} 身代金 = {w=1, =3, o=1, l=4、k=1、I=1、y=1、i=2}
String mag = "this is what I said Im going to do. i really like you a lot";
String ransom = "i will kill you";
Map<Character,Integer> map = new HashMap<Character,Integer>();
Map<Character,Integer> ransomMap = new HashMap<Character,Integer>();
for(int i = 0; i < mag.length() -1; i++)
{
char c = mag.charAt(i);
if(!map.containsKey(c))
map.put(c, 1);
else{
int value = map.get(c);
map.put(c,++value);
}
}
System.out.println(map);
for(int i = 0; i < ransom.length()-1; i++ )
{
char c = ransom.charAt(i);
if(!ransomMap.containsKey(c))
ransomMap.put(c,1);
else
{
int value = (ransomMap.get(c));
ransomMap.put(c,++value);
}
}
System.out.println(ransomMap);
}