205. Isomorphic Strings - Easy

前往題目

思路

  1. st位置相對應的字符的位置存起來
  2. 如果存起來的位置不符,就代表沒辦法直接替換
  3. 位置都相符就代表可以直接替換

我覺得可以理解為,同樣位置的要視為同一個字符,所以一種字符不能有兩種位置

Code

class Solution {
    public boolean isIsomorphic(String s, String t) {
        int[] map1 = new int[128];  // index represents character ASCII
        int[] map2 = new int[128];

        // Loop through all the characters
        for(int i = 0; i < s.length(); ++i){
            // compare character
            if(map1[s.charAt(i)] != map2[t.charAt(i)]){
                return false;
            }

            // Assign position num to each character
            // +1 is to avoid 0 which is the default value of every position
            map1[s.charAt(i)] = i+1;
            map2[t.charAt(i)] = i+1;
        }

        return true;
    }
}

205. Isomorphic Strings - Easy
https://f88083.github.io/2024/05/08/205-Isomorphic-Strings-Easy/
作者
Simon Lai
發布於
2024年5月8日
許可協議