Lintcode133 Longest Words solution 题解

【题目描述】

Given a dictionary, find all of the longest words in the dictionary.

给一个词典,找出其中所有最长的单词。

【题目链接】

www.lintcode.com/en/problem/longest-words/

【题目解析】

容易想到的是首先遍历一次,找到最长的字符串。第二次遍历时取最长的放到最终结果中。但是如果只能进行一次遍历呢?一次遍历意味着需要维护当前遍历的最长字符串,这必然有比较与更新删除操作,这种情况下使用双端队列最为合适,这道题稍微特殊一点,不必从尾端插入,只需在遍历时若发现比数组中最长的元素还长时删除整个列表。

【参考答案】

www.jiuzhang.com/solutions/longest-words/

你可能感兴趣的:(Lintcode133 Longest Words solution 题解)