Skip to content

Commit cf9d00c

Browse files
committed
valid-anagram
1 parent 054e552 commit cf9d00c

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

valid-anagram/taewanseoul.ts

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/**
2+
* 242. Valid Anagram
3+
* Given two strings s and t, return true if t is an anagram of s, and false otherwise.
4+
*
5+
* https://leetcode.com/problems/valid-anagram/description/
6+
*/
7+
function isAnagram(s: string, t: string): boolean {
8+
if (s.length !== t.length) {
9+
return false;
10+
}
11+
12+
const charMap = new Map<string, number>();
13+
14+
for (const char of s) {
15+
const count = charMap.get(char);
16+
if (count) {
17+
charMap.set(char, count + 1);
18+
} else {
19+
charMap.set(char, 1);
20+
}
21+
}
22+
23+
for (const char of t) {
24+
const count = charMap.get(char);
25+
if (count) {
26+
charMap.set(char, count - 1);
27+
} else {
28+
return false;
29+
}
30+
}
31+
32+
return true;
33+
}
34+
35+
// O(n) time
36+
// O(n) space

0 commit comments

Comments
 (0)