An anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once. [1] For example, the word anagram itself can be rearranged into nag a ram, also the word binary into brainy and the word adobe into abode.
The original word or phrase is known as the subject of the anagram. Any word or phrase that exactly reproduces the letters in another order is an anagram. Someone who creates anagrams may be called an "anagrammatist", [2] and the goal of a serious or skilled anagrammatist is to produce anagrams that reflect or comment on their subject.
The anagram algorithm is a simple algorithm that given two strings you need to compare and check if they are anagrams of each other. The strings can contain any type of characters
[1] "anagram". CollinsDictionary.com. HarperCollins Publishers. Retrieved 22 September 2017.
[2] Anagrammatist, Dictionary.com. Retrieved on 12 August 2008.