题目:最长单词

来源:互联网 发布:大学生找工作知乎 编辑:程序博客网 时间:2024/06/06 13:07

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

您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题?AirbnbAlibaba 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<String> longestWords(String[] dictionary) {
        // write your code here
        ArrayList<String> strList = new ArrayList<>();
        int  longest = 0;
        for(int i=0;i<dictionary.length;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;
    }
};



0 0
原创粉丝点击