Ask Question

An anagram is a word or a phrase made by transposing the letters of another word or phrase; for example, "parliament" is an anagram of "partial men," and "software" is an anagram of "swear oft." Write a program that figures out whether one string is an anagram of another string. The program should ignore white space and punctuation.

+5
Answers (1)
  1. 7 July, 07:06
    0
    Anagram

    Explanation:

    public class Anagram {

    public static boolean areAnagrams (String string1,

    String string2) {

    String workingCopy1 = removeJunk (string1);

    String workingCopy2 = removeJunk (string2);

    workingCopy1 = workingCopy1. toLowerCase ();

    workingCopy2 = workingCopy2. toLowerCase ();

    workingCopy1 = sort (workingCopy1);

    workingCopy2 = sort (workingCopy2);

    return workingCopy1. equals (workingCopy2);

    }

    protected static String removeJunk (String string) {

    int i, len = string. length ();

    StringBuilder dest = new StringBuilder (len);

    char c;

    for (i = (len - 1); i > = 0; i--) {

    c = string. charAt (i);

    if (Character. isLetter (c)) {

    dest. append (c);

    }

    }

    return dest. toString ();

    }

    protected static String sort (String string) {

    char[] charArray = string. toCharArray ();

    java. util. Arrays. sort (charArray);

    return new String (charArray);

    }

    public static void main (String[] args) {

    String string1 = "Cosmo and Laine:";

    String string2 = "Maid, clean soon!";

    System. out. println ();

    System. out. println ("Testing whether the following "

    + "strings are anagrams:");

    System. out. println (" String 1: " + string1);

    System. out. println (" String 2: " + string2);

    System. out. println ();

    if (areAnagrams (string1, string2)) {

    System. out. println ("They ARE anagrams!");

    } else {

    System. out. println ("They are NOT anagrams!");

    }

    System. out. println ();

    }

    }
Know the Answer?
Not Sure About the Answer?
Find an answer to your question 👍 “An anagram is a word or a phrase made by transposing the letters of another word or phrase; for example, "parliament" is an anagram of ...” in 📗 Computers & Technology if the answers seem to be not correct or there’s no answer. Try a smart search to find answers to similar questions.
Search for Other Answers