890 查詢和替換模式

2022-09-03 09:45:12 字數 963 閱讀 5022

題目:你有乙個單詞列表 words 和乙個模式  pattern,你想知道 words 中的哪些單詞與模式匹配。如果存在字母的排列 p ,使得將模式中的每個字母 x 替換為 p(x) 之後,我們就得到了所需的單詞,那麼單詞與模式是匹配的。(回想一下,字母的排列是從字母到字母的雙射:每個字母對映到另乙個字母,沒有兩個字母對映到同乙個字母。)返回 words 中與給定模式匹配的單詞列表。

示例:

輸入:words = ["abc","deq","mee","aqq","dkd","ccc"], pattern = "abb"

輸出:["mee","aqq"]

解釋:"mee" 與模式匹配,因為存在排列 。

"ccc" 與模式不匹配,因為 不是排列。

因為 a 和 b 對映到同乙個字母。

題解1:

class solution 

}return res;

}private:

bool match(const string& word, const string& pattern)

//建立雙對映

unordered_mapword2pattern;

unordered_mappattern2word;

int n = word.size();

for (int i = 0; i < n; i++) else }}

return true;

}};

題解2:

class solution {

public:

vectorfindandreplacepattern(vector& words, string pattern) {

vectorres;

for(int i=0;i

890 查詢和替換模式

你有乙個單詞列表words和乙個模式pattern,你想知道words中的哪些單詞與模式匹配。如果存在字母的排列p,使得將模式中的每個字母x替換為p x 之後,我們就得到了所需的單詞,那麼單詞與模式是匹配的。回想一下,字母的排列是從字母到字母的雙射 每個字母對映到另乙個字母,沒有兩個字母對映到同乙個...

890 查詢和替換模式

題目描述 你有乙個單詞列表 words 和乙個模式 pattern,你想知道 words 中的哪些單詞與模式匹配。如果存在字母的排列 p 使得將模式中的每個字母 x 替換為 p x 之後,我們就得到了所需的單詞,那麼單詞與模式是匹配的。回想一下,字母的排列是從字母到字母的雙射 每個字母對映到另乙個字...

LeetCode ID 890 查詢和替換模式

你有乙個單詞列表 words 和乙個模式 pattern,你想知道 words 中的哪些單詞與模式匹配。如果存在字母的排列 p 使得將模式中的每個字母 x 替換為 p x 之後,我們就得到了所需的單詞,那麼單詞與模式是匹配的。回想一下,字母的排列是從字母到字母的雙射 每個字母對映到另乙個字母,沒有兩...