Isomorphic Strings
https://leetcode.com/problems/isomorphic-strings/description/
Given two stringssandt, determine if they are isomorphic.
Two strings are isomorphic if the characters inscan be replaced to gett.
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 bothsandthave the same length.
Thoughts
两个单词的字母应是一一映射的关系,判断是否满足。那就一边遍历一边画映射,当发现一个字符不满足已经画过得映射则报错。
Code
Analysis
做题耗时8分
Errors:
没写if (!map.containsKey(s.charAt(i)) && map.containsValue(t.charAt(i))) 忘了[a, b]和[a,a], 只检查了一边映射。
时间复杂度O(n), 空间O(n).
Last updated
Was this helpful?