国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[LintCode] Anagrams

GitChat / 2457人閱讀

摘要:對變形詞的查找和歸類,可以將自然排序的詞根和所有同根變形詞成對存入哈希表里。然后,返回里大于的字符串數組,再存入結果數組。注意并不是的結構,而是和數組相同的,所以存到一定要用方法。有幾行容易出錯的語句,可以注意一下

Problem

Given an array of strings, return all groups of strings that are anagrams.

Notice

All inputs will be in lower-case

Example

Given ["lint", "intl", "inlt", "code"], return ["lint", "inlt", "intl"].

Given ["ab", "ba", "cd", "dc", "e"], return ["ab", "ba", "cd", "dc"].

Note

對變形詞的查找和歸類,可以將自然排序的詞根和所有同根變形詞成對存入哈希表map里。然后,返回map.values()size大于1的字符串數組,再存入結果數組res。注意res并不是ArrayList>()的結構,而是和list數組相同的ArrayList(),所以存listres一定要用addAll()方法。
有幾行容易出錯的語句,可以注意一下:
char[] temp = str.toCharArray();
String sortedstr = new String(temp);
for (ArrayList str: map.values()) {};
res.addAll(list);

Solution
public class Solution {
    public List anagrams(String[] strs) {
        List res = new ArrayList();
        HashMap> map = new HashMap>();
        for (String str: strs) {
            char[] temp = str.toCharArray();
            Arrays.sort(temp);
            String sortedstr = new String(temp);
            if (map.containsKey(sortedstr)) {
                ArrayList list = map.get(sortedstr);
                list.add(str);
                map.put(sortedstr, list);
            }
            else {
                ArrayList list = new ArrayList();
                list.add(str);
                map.put(sortedstr, list);
            }
        }
        for (ArrayList list: map.values()) {
            if (list.size() > 1) res.addAll(list);
        }
        return res;
    }
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/65691.html

相關文章

  • [LintCode] Substring Anagrams

    Problem Given a string s and a non-empty string p, find all the start indices of ps anagrams in s. Strings consists of lowercase English letters only and the length of both strings s and p will not be...

    andong777 評論0 收藏0
  • [LintCode/LeetCode] Two Strings are Anagrams/Valid

    摘要:建立一個長度為的數組,統計所有個字符在出現的次數,然后減去這些字符在中出現的次數。否則,循環結束,說明所有字符在和中出現的次數一致,返回。 Program Write a method anagram(s,t) to decide if two strings are anagrams or not. Example Given s=abcd, t=dcab, return true....

    vslam 評論0 收藏0
  • [Leetcode] Group Anagrams 變形詞

    摘要:我們將每個詞排序后,根據這個鍵值,找到哈希表中相應的列表,并添加進去。 Group Anagrams 最新更新請見:https://yanjia.me/zh/2019/01/... Given an array of strings, group anagrams together. For example, given: [eat, tea, tan, ate, nat, bat...

    Lin_YT 評論0 收藏0
  • 49. Group Anagrams and 249. Group Shifted Strings

    摘要:也就是同構異形體。特點是有相同數量的組成。素數可以素數表。這里使用而不是可以避免最后從導出結果的時間。修改了和得到的方法,其他都一樣。但是會有解不了的地方。還有個特殊情況就是不是一組。如果數字編碼出來都是如果用編碼,出現的就是。 49 Group Anagrams Given an array of strings, group anagrams together. For examp...

    cppowboy 評論0 收藏0
  • [LeetCode]Find All Anagrams in a String

    摘要:解題思路,就是只順序不同但個數相同的字符串,那我們就可以利用的思想來比較每個字符串中字符出現的個數是否相等。 Find All Anagrams in a StringGiven a string s and a non-empty string p, find all the start indices of ps anagrams in s. Strings consists of...

    niceforbear 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<