lintcode 133 最长单词
2017-10-11 09:03
225 查看
给一个词典,找出其中所有最长的单词。
您在真实的面试中是否遇到过这个题?
Yes
样例
在词典
中, 最长的单词集合为
在词典
中,最长的单词集合为
遍历两次的办法很容易想到,如果只遍历一次你有没有什么好办法?
您在真实的面试中是否遇到过这个题?
Yes
样例
在词典
{ "dog", "google", "facebook", "internationalization", "blabla" }
中, 最长的单词集合为
["internationalization"]
在词典
{ "like", "love", "hate", "yes" }
中,最长的单词集合为
["like", "love", "hate"]
public class Solution { /* * @param dictionary: an array of strings * @return: an arraylist of strings */ public ArrayList<String> longestWords(String[] dictionary) { // write your code here int max = dictionary[0].length();//假定数组第一个长度最大 ArrayList<String> list = new ArrayList<String>(); for(int i=0;i<dictionary.length;i++){ if(dictionary[i].length() >= max){ max = dictionary[i].length();//循环找出数组中最长单词的长度 } } for(int j = 0;j < dictionary.length;j++){ if(dictionary[j].length() == max ){ list.add(dictionary[j]); //循环找出数组中单词长度为max的单词,并放入list中 } } return list; } }
挑战
遍历两次的办法很容易想到,如果只遍历一次你有没有什么好办法?
相关文章推荐
- LintCode题解之最长单词
- lintcode :最长单词
- lintcode&九章算法——Google 面试题 | 字典里面的最长单词 ? 待解决
- lintcode ----最长单词
- LintCode-最长回文子串
- lintcode-单词接龙-120
- LintCode--最长上升连续子序列
- Lintcode最长公共子串
- lintcode-76-最长上升子序列
- Lintcode---单词的添加与查找
- LintCode : 最长公共前缀
- LintCode : 单词搜索 II
- lintcode:最后一个单词的长度
- lintcode最长公共前缀
- Lintcode--010(最长上升子序列)
- LintCode 单词切分
- lintcode最长无重复字符的子串
- lintcode---实现trie--单词的添加与查找
- lintcode :最长上升连续子序列
- lintcode最长公共子串