public class Solution
{
public string ConvertString(string pattern)
{
var dic = new Dictionary<char, int>();
int code = ;
var str = "";
for (int i = ; i < pattern.Length; i++)
{
if (!dic.ContainsKey(pattern[i]))
{
dic.Add(pattern[i], code);
str += code.ToString() + "|";
code++;
}
else
{
str += dic[pattern[i]].ToString() + "|";
}
}
return str;
} public IList<string> FindAndReplacePattern(string[] words, string pattern)
{
var pt = ConvertString(pattern);
var list = new List<string>();
foreach (var word in words)
{
var p = ConvertString(word);
if (p.Equals(pt))
{
list.Add(word);
}
}
return list;
}
}

原来的实现中没有加"|"对code进行分割,这样的代码也可以ac,但是会有隐藏的bug,那就是如下两个串会得到相同的编码:

abcdefghijklmn

abcdefghijbabbbcbd

两个字符串都会编码为012345678910111213,加了竖线就不会再有这个bug。

leetcode890的更多相关文章

  1. [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 patter ...

随机推荐

  1. 如果从excel表中导出insert-sql

    =CONCATENATE("INSERT INTO p_act_lottery(actId,status,grantWay,createTime,invalidTime,amount,pri ...

  2. 052——VUE中使用vue-cli初始化单页面应用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. timer Compliant Controller project (1)--Product introduction meeting

    Last week ,I lead the meeting for new project. i'm  very excited. The meeting is divided into the fo ...

  4. DIY远程控制开关(tiny6410+LED+yeelink+curl)

    上一次,介绍了如何实现远程监控室内温度,大家伙反响还是很热烈的,笔者很欣慰,独乐乐不如众乐乐啊.不过话说回来,那个实现只能是远程监测家中温度,假如发现家里热得很,想远程打开空调开关提前降降温,回家后不 ...

  5. 右键添加git bush here

    由于sourcetree自动安装的git,导致右键没有git bush here,那么我们就自己添加一下. 运行regedit.exe进入注册表,在HKEY_CLASSES_ROOT\Director ...

  6. create newline in Github Bio

    /********************************************************************************* * create newline ...

  7. 升级到SQL Server 2012/2014时一些需要考虑的事项

    1. 使用Upgrade Adviser评估升级前需要解决的事情. https://msdn.microsoft.com/zh-cn/library/ms144256(v=sql.110).aspx ...

  8. 洛谷 P1039侦探推理

    /* 枚举罪犯和星期几,那么所有人说的话是真是假一目了然. 首先一个人不能既说真话又说假话. 即: I am guilty. I am not guilty. 因为非真即假,所以直接判断impossi ...

  9. 494 - Kindergarten Counting Game

     Kindergarten Counting Game  Everybody sit down in a circle. Ok. Listen to me carefully. ``Woooooo, ...

  10. 图形学习 Javascript 正则 regexper.com

    regexper.com 可以很方便的显示出正则图示,方便学习正则. 比如正则 ^([a-zA-Z0-9+_-])+@([a-zA-Z_-])+(\.[a-zA-Z0-9_-])+ 一目了然,直观显示 ...