Advertisement
gelita

is anagram

Feb 21st, 2020
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 1.39 KB | None | 0 0
  1. // anagram by bp
  2.  
  3. import java.io.*;
  4.  
  5. class MyCode {
  6.     public static void main (String[] args) {
  7.         System.out.println(isAnagram("ate","eat"));
  8.     }
  9. }
  10. /*
  11.  
  12. for i in list
  13.   for j in list
  14.     if isAnagram(i,j)
  15.     {
  16.       remove(j)
  17.     }
  18.  
  19. return list.size
  20. */
  21. public boolean isAnagram(String s1, String s2){
  22.         boolean flag = false;
  23.         if(s1.length()!=s2.length()){
  24.             return false;
  25.         }
  26.         char[] s1ToCharArray = s1.toCharArray();
  27.         char[] s2ToCharArray = s2.toCharArray();
  28.         HashMap<Character,Integer> map1 = new HashMap<Character,Integer>();
  29.         HashMap<Character,Integer> map2 = new HashMap<Character,Integer>();
  30.         for(Character c1: s1ToCharArray){
  31.             if(!map1.containsKey(c1)){
  32.                 map1.put(c1, 1);
  33.             }
  34.             else{
  35.                 Integer value = map1.get(c1);
  36.                 map1.replace(c1, value+1);
  37.             }
  38.         }
  39.         for(Character c2: s2ToCharArray){
  40.             if(!map2.containsKey(c2)){
  41.                 map2.put(c2, 1);
  42.             }
  43.             else{
  44.                 Integer value = map2.get(c2);
  45.                 map2.replace(c2, value+1);
  46.             }
  47.         }
  48.         for(Character key: map1.keySet()){
  49.             if(map2.containsKey(key)&&map2.get(key).equals(map1.get(key))){
  50.                 flag=true;
  51.             }
  52.         }
  53.         return flag;
  54.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement