思路:
这题理解题意的时候就用了很久,其实就是映射关系,字符串s里的每个字母都可以由t中替代,所以当s中有相同字母,t中也要有相同的字母,这样就不会出现s中一个字母对了多个t中的字母。
所以用HashMap。分别把两个字符串存到两个map中。如果map中字母个数相等,说明可以建立一一对应的关系,返回true
建一个map保存映射关系, 同时用一个set保持 被映射的char, 保证同一个char 不会被映射两次.
https://my.oschina.net/Tsybius2014/blog/489587
知识点:
HashSet是Set的一个实现类,包含的对象拒绝重复。HashMap是Map的一个实现类,键值不能重复但是value允许重复,可以出现null,继承自AbstractMap类,线程缺省值是非synchronized
HashTable是内部不允许出现null,继承自dictionary类,线程是synchronized,和HashMap都实现了map接口。