LeetCode 524. Longest Word in Dictionary through Deleting (通过删除字母匹配到字典里最长单词)
Posted 几米空间
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 524. Longest Word in Dictionary through Deleting (通过删除字母匹配到字典里最长单词)相关的知识,希望对你有一定的参考价值。
题目标签:Sort
对于每一个 字典中的 word,
step 1: 先确定它的chars 是不是都出现在s里面。不符合的就不用考虑了。
step 2: 检查这个word 是否比之前的更长,或者一样长,但是字母顺序更小,是的话需要更新。
Java Solution:
Runtime: 16ms, faster than 88.86%
Memory Usage: 40.9, less than 32.54%
完成日期:6/16/2020
关键点:利用 i 来计数 确认 word 的 chars 都出现在s里
class Solution { public String findLongestWord(String s, List<String> d) { String res = ""; // iterate each word in dictionary for(String str : d) { int i = 0; // check each char of word appears in s for(char c : s.toCharArray()) { if(i < str.length() && c == str.charAt(i)) i++; } // check need to save this word if(i == str.length() && str.length() >= res.length()) { if(str.length() > res.length() || str.compareTo(res) < 0) { res = str; } } } return res; } }
参考资料:https://www.cnblogs.com/grandyang/p/6523344.html
LeetCode 题目列表 - LeetCode Questions List
题目来源:https://leetcode.com/
以上是关于LeetCode 524. Longest Word in Dictionary through Deleting (通过删除字母匹配到字典里最长单词)的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 524. Longest Word in Dictionary through Deleting (通过删除字母匹配到字典里最长单词)
524. Longest Word in Dictionary through Deleting
524 Longest Word in Dictionary through Deleting