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. UVA-1613 K-Graph Oddity (着色问题)

    题目大意:一张n个顶点.m条边的无向连通图,用k种颜色着色(相邻顶点颜色不能相同),其中k为不小于点的最大度数的最小奇数. 题目分析:水题一道.建张图深搜一下就行了. # include<ios ...

  2. type使用细则

    CREATE OR REPLACE TYPE ADDRESS_TYPE   --创建类型 ADDRESS_TYPE AS OBJECT(ZIP VARCHAR2(6),PROVINCE VARCHAR ...

  3. ruby on rails Mac 安装

    网上的资料有很多,但好多坑,有的已经过期了,有的不符合现整理了一下 貌似有的还跟os系统版本有关系,请勿照搬,根据实际情况安装 我的系统版本是10.12.3 ps:选择一个较好的网络,很多问题有得时候 ...

  4. ASP.NET Page 指令

    一些重要的Page指令 虽然Page公开了很多属性,让我们可以在运行时调整它的状态与行为,但是,还有些重要的参数却是以“指令”方式提供的,需要在设计时就指定.下面是我整理的一些我认为 比较重要并且经常 ...

  5. echart3 湖北地图及如何创建其他省份地图

    刚刚收到一封园友求助echart湖北地图的邮件,现在将湖北地图的所有代码贴到这里,希望可以帮助到更多朋友. 1.首先你得到echarts官网下载js,很多人说找不到,可以到我的git下载(https: ...

  6. MarkdownPad2 下一些设置

    MarkdownPad2注册码: 邮箱: Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6 ...

  7. Python - Learn Note (2)

    Python注释 Python的注释以#开头,后面的文字直到行尾都算注释 Python基本数据类型 整数.浮点数(浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置 ...

  8. <NET CLR via c# 第4版>笔记 第9章 参数

    9.1 可选参数和命名参数 class Program { private static int s_n = 0; private static void M(int x = 9, string s ...

  9. yaf 笔记(持续更新)

    1.如果action不需要输出视图文件(如果ajax请求之类的),只需要在action里面加Yaf\DisPatcher::getInstance()->disableView(); 2.获取客 ...

  10. vue music 歌单组件

    在data里面定义 discList: [] methods: { _getRecommend() { getRecommend().then((res) => { if(res.code == ...