预处理+双指针

lc

lc524

预处理+双指针

class Solution

{

/*

如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串

*/

public:

string findLongestWord(string s, vector<string>& dictionary)

{

vector<string> d=dictionary;

sort(d.begin(),d.end(),\&(string& a,string& b)

{

int m=a.size(),n=b.size();

if(m==n)

return a<b;

return m>n;

});//预处理

auto check=\&(string& a,string& b)

{

int x=0,y=0,m=a.size(),n=b.size();

while(x<m && y<n)

{

if(ax==by)

x++;

y++;

}

return x==m;

};

for(auto& c:d)

{

if(check(c,s))

return c;

}

return "";

}

};

相关推荐
鹿角片ljp24 分钟前
LeetCode 236. 二叉树的最近公共祖先|递归后序
算法
luj_176836 分钟前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
无定义_41 分钟前
Floyd——Warshall
算法
带多刺的玫瑰2 小时前
Leecode#9刷题之回文数
数据结构·算法
泯泷2 小时前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
泯泷2 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法
泯泷2 小时前
手搓JSVM第 6 篇:把 IR 编成字节码:emit 与 label fixup
前端·javascript·算法
泯泷2 小时前
手搓JSVM第 3 篇:从栈式 VM 到寄存器式 VM:为什么我们选择寄存器
前端·javascript·算法
泯泷2 小时前
第 4 篇:让 VM 支持变量:Slot、Environment 与 TDZ
前端·javascript·算法
Asize3 小时前
54. 螺旋矩阵
算法