From 8bccad8d1ae2c848ee4f32fc96bd35f2943b97b8 Mon Sep 17 00:00:00 2001 From: Nikhil Anand <34477129+NikSWE@users.noreply.github.com> Date: Fri, 6 Jan 2023 03:57:36 +0000 Subject: [PATCH] Create: 0242-valid-anagram.scala --- scala/0242-valid-anagram.scala | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 scala/0242-valid-anagram.scala diff --git a/scala/0242-valid-anagram.scala b/scala/0242-valid-anagram.scala new file mode 100644 index 000000000..a4c23d6e2 --- /dev/null +++ b/scala/0242-valid-anagram.scala @@ -0,0 +1,33 @@ +// Time Complexity: O(s + t) +// Space Comeplexity: O(s + t) + +import scala.collection.mutable.Map + +object Solution { + def isAnagram(s: String, t: String): Boolean = { + if (s.length() != t.length()) + return false + + var charCount = Map[Char, Int]() + + for (c <- s) { + if (charCount.contains(c)) + charCount(c) = charCount(c) + 1 + else + charCount += (c -> 1) + } + + for (c <- t) { + if (charCount.contains(c)) + charCount(c) = charCount(c) - 1 + else + charCount += (c -> 1) + } + + for ((_, v) <- charCount) + if (v != 0) + return false + + return true + } +}