291 單詞規律 II

2021-10-18 23:27:34 字數 802 閱讀 7892

給你一種規律 pattern 和乙個字串 str,請你判斷 str 是否遵循其相同的規律。

這裡我們指的是 完全遵循,例如 pattern 裡的每個字母和字串 str 中每個 非空 單詞之間,存在著 雙射 的對應規律。雙射 意味著對映雙方一一對應,不會存在兩個字元對映到同乙個字串,也不會存在乙個字元分別對映到兩個不同的字串。

示例:輸入:pattern = 「abab」, s = 「redblueredblue」

輸出:true

解釋:一種可能的對映如下:

『a』 -> 「red」

『b』 -> 「blue」

回溯

class

solution

bool

track_back

(string pattern,string str,

int indexs,

int indexp,unordered_map<

char

,string>

& hash,unordered_set

& se)

return

track_back

(pattern,str,indexs+temp.

size()

,indexp+

1,hash,se);}

else

se.erase

(temp);}

hash.

erase

(pattern[indexp]);

return

false;}

}};

291 單詞規律 II ( 回溯 雜湊 )

leetcode 291.單詞規律 ii 雜湊表記錄pattern每個字元與str的對映關係,當找到乙個沒有存在的對映關係 或者 已經存在的對映關係時,進入下一層遞迴進行遍歷。每次選擇前面的一部分,傳遞下一層遞迴的時候擷取掉已經使用過的部分。直到pattern中所有的字元都被使用完了,並且str也恰...

LeetCode 291 單詞規律 II(回溯)

給你一種規律 pattern 和乙個字串 str,請你判斷 str 是否遵循其相同的規律。這裡我們指的是 完全遵循,例如 pattern 裡的每個字母和字串 str 中每個非空單詞之間,存在著雙向連線的對應規律。示例1 輸入 pattern abab str redblueredblue 輸出 tr...

Leetcode 單詞規律

63.單詞規律 題目內容 及思路 include include include includeusing namespace std class solution if i str.size 1 對於最後乙個字串 如果個數不一樣,肯定不匹配 if pattern.size str1.size re...