Leetcode-890 查找和替换模式

 1 class Solution
 2 {
 3     public:
 4         vector<string> findAndReplacePattern(vector<string>& words, string pattern)
 5         {
 6             vector<string> result;
 7             map<int,int> store;
 8             map<int,int> store2;
 9
10             for(int i = 0; i < words.size(); i ++)
11             {
12                 int pattern_index = 0;
13                 int flag = 0;
14                 store.clear();
15                 store2.clear();
16                 for(auto c:words[i])
17                 {
18                     if(store.find(c)==store.end())
19                     {
20                         if(store2.find(pattern[pattern_index])==store2.end())
21                         {
22                             store.insert(make_pair(c,pattern[pattern_index]));
23                             store2.insert(make_pair(pattern[pattern_index],c));
24                         }
25                         else
26                         {
27                             flag = 1;
28                             break;
29                         }
30                     }
31                     else
32                     {
33                         if(store.find(c)->second!=pattern[pattern_index])
34                         {
35                             flag = 1;
36                             break;
37                         }
38                     }
39                     pattern_index ++;
40                 }
41                 if(flag==0)
42                 {
43                     result.emplace_back(words[i]);
44                 }
45             }
46             return result;
47         }
48 };

原文地址:https://www.cnblogs.com/Asurudo/p/9500606.html

时间: 2024-11-06 13:27:30

Leetcode-890 查找和替换模式的相关文章

890. 查找和替换模式

890. 查找和替换模式 https://leetcode-cn.com/contest/weekly-contest-98/problems/find-and-replace-pattern/ package com.test; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; //https://leetcode-cn.com/contest/w

[LeetCode] 890. Find and Replace Pattern 查找和替换模式

You have a list of?words?and a?pattern, and you want to know which words in?words?matches the pattern. A word matches the pattern if there exists a permutation of letters?p?so that after replacing every letter?x?in the pattern with?p(x), we get the d

力扣——查找和替换模式

你有一个单词列表 words 和一个模式  pattern,你想知道 words 中的哪些单词与模式匹配. 如果存在字母的排列 p ,使得将模式中的每个字母 x 替换为 p(x) 之后,我们就得到了所需的单词,那么单词与模式是匹配的. (回想一下,字母的排列是从字母到字母的双射:每个字母映射到另一个字母,没有两个字母映射到同一个字母.) 返回 words 中与给定模式匹配的单词列表. 你可以按任何顺序返回答案. 示例: 输入:words = ["abc","deq"

[Swift]LeetCode890. 查找和替换模式 | Find and Replace Pattern

You have a list of words and a pattern, and you want to know which words in words matches the pattern. A word matches the pattern if there exists a permutation of letters p so that after replacing every letter x in the pattern with p(x), we get the d

Shell脚本学习指南 [ 第三、四章 ] 查找与替换、文本处理工具

摘要:第三章讨论的是编写Shell脚本时经常用到的两个基本操作.第四章总共介绍了约30种处理文本文件的好用工具. 第三章 查找与替换 概括:本章讨论的是编写Shell脚本时经常用到的两个基本操作:文本查找.文本替换. 3.1  查找文本 如需从输入的数据文件中取出特定的文本行,主要的工具为grep程序.POSIX采用三种不同grep变体:grep.egrep.fgrep整合为单个版本,通过不同的选项,分别提供这三种行为模式.who | grep -F root上面使用-F选项,以查找固定字符串r

vi的查找与替换

0x01 查找 (在命令行模式下) /<要查找的字符>   向下查找要查找的字符 ?<要查找的字符>   向上查找要查找的字符 0x02 替换 (在底行模式下) :0,$s/string1/string2/g 0,$ 替换范围从第0行到最后一行 s 转入替换模式 string1/string2 把所有的string1替换为string2 g 替换一行中所有的string1,否则只替换第一个

linux vim的使用快捷键之查找与替换

查找 /csdn      向下查找一个名称为csdn的字符串 ?csdn   向上查找一个名称为csdn的字符串 n      n是英文字母,表示向下继续查找前一个查找的操作(和上面的操作配合使用) N     N是英文字母,表示向上继续查找前一个查找的操作(和上面的操作配合使用) 替换 :n1,n2s/word1/word2/g n1和n2为数字.表示在n1和n2行之间查询word1,并将这个字符串替换为word2. 例如: :10,20s/csdn/good/g 表示在10到20行之间,把

【python cookbook】【字符串与文本】5.查找和替换文本

问题:对字符串中的文本做查找和替换 解决方案: 1.对于简单模式:str.replace(old, new[, max]) 2.复杂模式:使用re模块中的re.sub(匹配的模式, newstring, oldstring[,替换个数])函数 3.re.subn()可以获得替换的总次数 # example.py # # Examples of simple regular expression substitution import re #simple sample text1='yeah,b

Linux —— 查找与替换

文本查找:    grep, egrep, fgrep        grep:根据基本正则表达式定义的模式搜索文档,并将符合模式的文本行显示出来        注意:搜索时属于部分搜索,只要某一行有某一部分符合模式,就会被显示出来        模式:pattern,文本字符和正则表达式的元字符组合而成的匹配条件    grep 选项 模式 文件    -i:忽略大小写    [email protected]:~/linlin/test$ cat exp.txt   I have a pen