• Isomorphic Strings

Isomorphic Strings

Given two strings s and t , determine if they are isomorphic.
Two strings are isomorphic if the characters in s can be replaced to get t.
All occurrences of a character must be replaced with another character while preserving the order of characters. No two characters may map to the same character but a character may map to itself.
For example,
Given "egg", "add", return true.
Given "foo", "bar", return false.
Given "paper", "title", return true.
Note:
You may assume both s and t have the same length.
Solution:
1. public class Solution {
2. public boolean isIsomorphic(String s, String t) {
3. Map map1 = new HashMap<>();
4. Map map2 = new HashMap<>();
5. 6. for (int i = 0; i < s.length(); i++) {
7. char c1 = s.charAt(i);
8. char c2 = t.charAt(i);
9. 10. if (map1.containsKey(c1) && map1.get(c1) != c2)
11. return false;
12. 13. if (map2.containsKey(c2) && map2.get(c2) != c1)
14. return false;
15. 16. map1.put(c1, c2);
17. map2.put(c2, c1);
18. }
19. 20. return true;
21. }
22. }