diff options
Diffstat (limited to 'other/find_replace_pattern.cpp')
-rw-r--r-- | other/find_replace_pattern.cpp | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/other/find_replace_pattern.cpp b/other/find_replace_pattern.cpp deleted file mode 100644 index a00bfcb..0000000 --- a/other/find_replace_pattern.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "leetcode.h" - -class Solution { -public: - vector<string> findAndReplacePattern(vector<string> &words, string pattern) { - ans.resize(0); - codex.clear(); - cipher = pattern; - for (int i = 0; i < pattern.size(); i++) - cipher[i] = translate(cipher[i]); - for (auto &word : words) - compare(word); - return ans; - } - -private: - vector<string> ans; - unordered_map<char, char> codex; - string cipher; - char translate(char &c) { - if (codex.find(c) == codex.end()) - codex[c] = (char)(97 + codex.size()); - return codex[c]; - } - void compare(string &word) { - codex.clear(); - for (int i = 0; i < word.size(); i++) - if (translate(word[i]) != cipher[i]) - return; - ans.push_back(word); - } -}; |