leet205同構字串

2021-10-02 01:16:54 字數 1675 閱讀 2127

首先如果你做了leet290單詞規律可以按照上面的**寫,幾乎是一樣ed,只是稍微有些不同

在單詞規律題中,是單詞和字串之間的匹配,是兩種型別,因此在put時候即使是相同值得key也不會進行覆蓋。

但是本題中是都是字元和字元之間的匹配,是相同的型別,因此如果key的值相同則會進行覆蓋影響結果。

boolean e1 = objects.

equals

( mem.

put(

"a",1)

,mem.

put(

'a',1)

);boolean e2 = objects.

equals

( mem.

put(

"a",1)

,mem.

put(

'a',1)

);system.out.

println

(e1)

;//true

system.out.

println

(e2)

;//true

boolean e1 = objects.

equals

( mem.

put(

'a',1)

,mem.

put(

'a',1)

);boolean e2 = objects.

equals

( mem.

put(

'a',1)

,mem.

put(

'a',1)

);system.out.

println

(e1)

;//false

system.out.

println

(e2)

;//true

因此我們需要做一些改動,使之他們之間的匹配是不同的型別即可

public

static

boolean

isisomorphic2

(string s, string t)

public

static

boolean

isisomorphic1

(string s, string t)

也可以採取indexof的方法進行比較字元的位置

最好轉換成字元陣列,這樣執行速度更快,相差3ms差不多

public

static

boolean

isisomorphic

(string s, string t)

}return

true

;}

既然題屬於hashmap的,也可以採用hashmap的方法解答

public

boolean

isisomorphic

(string s, string t)

else

}return

true

;}

205 同構字串

一開始寫的是用兩個字典,將兩個字串的不同元素作為鍵,值是乙個列表,儲存該字串中等於當前鍵的索引,如abcccdd字串的字典為 然後將兩個字典的values 取出進行比較。class solution def isisomorphic self,s str,t str bool dic1,dic2 s...

205 同構字串

給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸入 s ...

205 同構字串

給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。輸入 s egg t add 輸出 true輸入 s foo t bar 輸...