-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathJAVA-Anagrams.txt
41 lines (35 loc) · 1.3 KB
/
JAVA-Anagrams.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
static boolean isAnagram(String s1, String s2) {
if(s1.length() != s2.length())
return false;
s1 = s1.toLowerCase();
s2 = s2.toLowerCase();
java.util.HashMap<Character, Integer> map1 = new java.util.HashMap<Character, Integer>();
for(int i = 0; i < s1.length(); i++) {
if(map1.containsKey(s1.charAt(i))) {
int t = map1.get(s1.charAt(i));
map1.put(s1.charAt(i), t + 1);
}
else {
map1.put(s1.charAt(i), 1);
}
}
java.util.HashMap<Character, Integer> map2 = new java.util.HashMap<Character, Integer>();
for(int i = 0; i < s2.length(); i++) {
if(map2.containsKey(s2.charAt(i))) {
int t = map2.get(s2.charAt(i));
map2.put(s2.charAt(i), t + 1);
}
else {
map2.put(s2.charAt(i), 1);
}
}
for(int i = 0; i < s2.length(); i++) {
if(map1.containsKey(s2.charAt(i))) {
if(map1.get(s2.charAt(i)) != map2.get(s2.charAt(i)))
return false;
}
else
return false;
}
return true;
}