Regular Expression Matching
两个字符串匹配的hard题,以前一直觉得很难做,现在感觉就是那么一回事,通过dp来bottom-up的问题很多,这两个就是非常典型的例子,状态转移需要好好研究下不然很容易出错。下次补充dfs + memorized的方法.
|
|
wildcard matching
|
|
One edit distance12345678910111213141516171819class Solution {public: bool isOneEditDistance(string s, string t) { int sl = s.size(); int tl = t.size(); for(int i = 0; i < min(sl,tl);++i){ if(s[i] != t[i]){ if(sl == tl){ return s.substr(i+1) == t.substr(i+1); }else if(sl < tl){ return s.substr(i) == t.substr(i+1); }else{ return s.substr(i+1) == t.substr(i); } } } return abs(sl - tl) == 1; }};