給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t ,那麼這兩個字串是同構的。
所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。
示例 1
:輸入: s =
"egg"
, t =
"add"
輸出:true
示例 2
:輸入: s =
"foo"
, t =
"bar"
輸出:false
示例 3
:輸入: s =
"*****"
, t =
"title"
輸出:true
說明: 你可以假設 s 和 t 具有相同的長度。根據題目,個人理解是兩個字串的結構相同,使用字串t中與s相對映的字元替換掉s中的字元後與t字串一致,按照這個思路寫的**:
class
solution
else
else
if(i>0)
map.
put(s.
charat
(i),t.
charat
(i))
; sb.
(t.charat
(i));}
}}if(t.
equals
(sb.
tostring()
))return
false;}
}
優化
class
solution
else
map.
put(s.
charat
(i),t.
charat
(i))
; sb.
(t.charat
(i));}
}if(t.equals
(sb.
tostring()
))return
false;}
}
再進一步
class
solution
}else
map.
put(s.
charat
(i),t.
charat
(i));}
}return
true;}
}
官方討論個人感覺比較出奇的寫法,又學到了
class
solution
return
true;}
}
leetcode 同構字串
給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換最終變成 t 則兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。思路 通過對映解決 s2t s到t的對映 t2s t到s的對映 如果s和t同...
leetcode解題之字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 示例2 輸入 ab...
LeetCode刷題之205 同構字串
我不知道將去向何方,但我已在路上!示例 1 輸入 s egg t add 輸出 true示例 2 輸入 s foo t bar 輸出 false示例 3 輸入 s t title 輸出 trueclass solution def isisomorphic self,s str,t str bool...