Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Anagram Program

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Anagram Program. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Arcesium's batch-processing operations may receive equivalent labels from different monitoring paths. Given two strings, determine whether they are anagrams after ignoring case and every non-alphanumeric character.

Two strings are normalized by applying Unicode case folding and retaining only characters for which isalnum() is true. The strings are anagrams if their normalized forms contain the same characters with the same frequencies.

Formal Specification

Implement are_anagrams(s, t), where s and t are strings. Return a boolean: True if the normalized strings are anagrams, otherwise False.

The comparison is case-insensitive. Spaces, punctuation, and symbols do not contribute to the result. Repeated characters must occur the same number of times.

Constraints

  • 0 <= len(s), len(t) <= 10^5
  • Strings may contain Unicode letters, digits, whitespace, and punctuation
  • Comparison is case-insensitive using Unicode case folding
  • Non-alphanumeric characters are ignored

Function Signature

def are_anagrams(s, t):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output