zoukankan      html  css  js  c++  java
  • 720. Longest Word in Dictionary 字典中最长的单词

    Given a list of strings words representing an English Dictionary, find the longest word in words that can be built one character at a time by other words in words. If there is more than one possible answer, return the longest word with the smallest lexicographical order.

    If there is no answer, return the empty string.

    Example 1:

    Input: 
    words = ["w","wo","wor","worl", "world"]
    Output: "world"
    Explanation: 
    The word "world" can be built one character at a time by "w", "wo", "wor", and "worl".
    

    Example 2:

    Input: 
    words = ["a", "banana", "app", "appl", "ap", "apply", "apple"]
    Output: "apple"
    Explanation: 
    Both "apply" and "apple" can be built from other words in the dictionary. However, "apple" is lexicographically smaller than "apply".
    

    Note:

  • All the strings in the input will only contain lowercase letters.
  • The length of words will be in the range [1, 1000].
  • The length of words[i] will be in the range [1, 30].

  1. /**
  2. * @param {string[]} words
  3. * @return {string}
  4. */
  5. var longestWord = function (words) {
  6. let res = "";
  7. words = words.sort();
  8. let set = new Set();
  9. for (let i in words) {
  10. let s = words[i];
  11. if (s.length == 1 || set.has(s.substring(0, s.length - 1))) {
  12. res = s.length > res.length ? s : res;
  13. set.add(s);
  14. }
  15. }
  16. return res;
  17. };



来自为知笔记(Wiz)


查看全文
  • 相关阅读:
    编译原理:正则表达式
    编译原理:基于状态转换图识别for语句
    汇编小笔记
    win10汇编如何debug(小白向)
    nodejs模块引用
    nodejs环境设置理解
    分享几个看上去很酷炫的运算
    JavaScript数据结构 (手打代码)
    爬取煎蛋XXOO妹子图片
    Python Selenium官方文档阅读笔记
  • 原文地址:https://www.cnblogs.com/xiejunzhao/p/7846743.html
  • Copyright © 2011-2022 走看看