leetcode-524. 通过删除字母匹配到字典里最长单词
双指针:
class Solution { public: string findLongestWord(string s, vector<string>& dictionary) { string res; for(int i = 0; i < dictionary.size(); i++){ int m = 0; int n = 0; int cnt = 0; while(n<dictionary[i].size()&&m<s.size()){ if(s[m]==dictionary[i][n]){ // 相等,就++继续比较 m++; n++; cnt++; }else{ // 不等就m++ m++; } } if(cnt==dictionary[i].size()){ // 此时找到 // 返回长度最长 // 或者字典序最小的字符串 if(res.size()==0||dictionary[i].size()>res.size()||(dictionary[i].size()==res.size()&&dictionary[i]<res)) res = dictionary[i]; } } return res; } };