题目:最长单词

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

您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题? Airbnb Alibaba Amazon Apple Baidu Bloomberg Cisco Dropbox Ebay Facebook Google Hulu Intel Linkedin Microsoft NetEase Nvidia Oracle Pinterest Snapchat Tencent Twitter Uber Xiaomi Yahoo Yelp Zenefits
感谢您的反馈
样例

在词典

{
  "dog",
  "google",
  "facebook",
  "internationalization",
  "blabla"
}

中, 最长的单词集合为 ["internationalization"]

在词典

{
  "like",
  "love",
  "hate",
  "yes"
}

中,最长的单词集合为 ["like", "love", "hate"]

挑战

遍历两次的办法很容易想到,如果只遍历一次你有没有什么好办法?

标签 Expand
枚举法 字符串处理 LintCode 版权所有



相关题目 Expand         

class Solution {
    /**
     * @param dictionary: an array of strings
     * @return: an arraylist of strings
     */
    ArrayList longestWords(String[] dictionary) {
        // write your code here
        ArrayList strList = new ArrayList<>();
        int  longest = 0;
        for(int i=0;i
             int wordLen = dictionary[i].length();
             if(wordLen>longest){
                  strList.clear();
                  strList.add(dictionary[i]);
                  longest = wordLen;
             }else if(wordLen==longest){
                  strList.add(dictionary[i]);
             }
        }
        return strList;
    }
};



你可能感兴趣的:(题目:最长单词)