/* * 205. Isomorphic Strings * 2016-6-8 by Mingyang * 和我们上次的那个pattern一样,用hashmap做就好了 * 这个题目可别小看,一开始的时候容易做错,ab,bb的case不过 * 因为把a存起来的时候并不知道b,所以我们不光要判断key有没有,还要判断value有没有 * 只有在key和value都相等的条件下才是最好的结果 */ public static boolean isIsomorphic(String s, String t) { int lens=s.length(); int lent=t.length(); if(lent!=lens) return false; HashMap<Character,Character> map=new HashMap<Character,Character>(); for(int i=0;i<lens;i++){ char temp=s.charAt(i); char nun=t.charAt(i); if(!map.containsKey(temp)&&!map.containsValue(nun)){ map.put(temp,nun); }else{ if(map.containsKey(temp)&&nun==(map.get(temp))) continue; else return false; } } return true; }