亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

1002-查找常用字符

winterdawn / 3191人閱讀

摘要:前言的查找常用字符給定僅有小寫(xiě)字母組成的字符串?dāng)?shù)組,返回列表中的每個(gè)字符串中都顯示的全部字符包括重復(fù)字符組成的列表。

前言

Weekly Contest 126的 查找常用字符:

給定僅有小寫(xiě)字母組成的字符串?dāng)?shù)組 A,返回列表中的每個(gè)字符串中都顯示的全部字符(包括重復(fù)字符)組成的列表。例如,如果一個(gè)字符在每個(gè)字符串中出現(xiàn) 3 次,但不是 4 次,則需要在最終答案中包含該字符 3 次。

你可以按任意順序返回答案。

示例1:

輸入:["bella","label","roller"]
輸出:["e","l","l"]

示例2:

輸入:["cool","lock","cook"]
輸出:["c","o"]

提示:

1 <= A.length <= 100

1 <= A[i].length <= 100

A[i][j] 是小寫(xiě)字母

解題思路

本題需要注意的是要輸出所有單詞中重復(fù)的字符,如果重復(fù)字符有多個(gè)就輸出對(duì)應(yīng)個(gè)數(shù)。我的解題思路如下:

以單詞中的字符為key,字符在單詞中的出現(xiàn)次數(shù)為valueMap將每個(gè)單詞的字符及出現(xiàn)頻次記錄下來(lái)。

找出每個(gè)Mapkey相同的元素,并以出現(xiàn)次數(shù)value的最小值為新的value組成重復(fù)單詞出現(xiàn)頻次的Map

遍歷步驟2中的Map,根據(jù)value可以得知每個(gè)單詞的出現(xiàn)次數(shù),將Map轉(zhuǎn)化為一個(gè)List

實(shí)現(xiàn)代碼
    /**
     * 1002. 查找常用字符
     * @param A
     * @return
     */
    public List commonChars(String[] A) {
        // 記錄重復(fù)字符出現(xiàn)次數(shù)的map
        // key為單詞中的字符,value為單詞中該字符的出現(xiàn)次數(shù)
        Map searchMap=new HashMap<>();
        for(int i=0;i map=new HashMap<>();
            for(String word:words){
                if(map.containsKey(word)){
                    map.put(word,map.get(word)+1);
                }else{
                    map.put(word,1);
                }
            }
            if(i==0){//第一次遍歷時(shí)把所有字符和其對(duì)應(yīng)的出現(xiàn)次數(shù)記錄下來(lái)
                searchMap.putAll(map);
            }else{
                Iterator> it=searchMap.entrySet().iterator();
                //新的重復(fù)字符出現(xiàn)次數(shù)的map
                Map newSearchMap=new HashMap<>();
                while (it.hasNext()){
                    Map.Entry entry=it.next();
                    String key=entry.getKey();
                    Integer value=entry.getValue();
                    if(map.containsKey(key)){// 在原map中存在相同字符,則將其記錄到新的map中,需要注意,以較少出現(xiàn)次數(shù)的準(zhǔn)
                        Integer otherValue=map.get(key);
                        newSearchMap.put(key,Math.min(value,otherValue));
                    }
                }
                searchMap=newSearchMap;
            }
        }
        List result=new ArrayList<>();
        searchMap.forEach((k,v)->{//將map轉(zhuǎn)化為結(jié)果
            for(int i=1;i<=v;i++){//根據(jù)出現(xiàn)次數(shù)value來(lái)給result添加對(duì)應(yīng)個(gè)數(shù)的key
                result.add(k);
            }
        });
        return result;
    }

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/73528.html

相關(guān)文章

  • TP5學(xué)習(xí)記錄(Model篇)

    摘要:數(shù)據(jù)庫(kù)操作數(shù)據(jù)庫(kù)連接在設(shè)置數(shù)據(jù)庫(kù)連接參數(shù)或者利用方法設(shè)置數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)初始化,并取得數(shù)據(jù)庫(kù)類(lèi)實(shí)例數(shù)據(jù)庫(kù)配置信息數(shù)組,可以在該方法里面進(jìn)行配置數(shù)據(jù)庫(kù)查找直接操作語(yǔ)句描述查詢(xún)語(yǔ)句,然后類(lèi)型語(yǔ)句字符串語(yǔ)句中綁定的字符串常用查詢(xún)語(yǔ)句返回所有記錄, ThinkPHP 數(shù)據(jù)庫(kù)操作 數(shù)據(jù)庫(kù)連接 #在config/database.php設(shè)置數(shù)據(jù)庫(kù)連接參數(shù)或者利用Db::connect()方法設(shè)置數(shù)...

    bingo 評(píng)論0 收藏0
  • 8. Q語(yǔ)言學(xué)習(xí)之路—表

    摘要:其中代表了列的類(lèi)型,表示了是否存在任何外鍵。事實(shí)上,語(yǔ)言會(huì)自動(dòng)地識(shí)別滿(mǎn)足表形式的列字典,在沒(méi)有任何請(qǐng)求詢(xún)問(wèn)下,將其轉(zhuǎn)換為表形式。結(jié)果顯示的結(jié)果永遠(yuǎn)是一個(gè)表。被用來(lái)合并兩個(gè)具有相同列的鍵表。屬性表明對(duì)所有出現(xiàn)的值,相同的值都是互相鄰近的。 0. 概述 表(Tables)和列表、字典一樣,都是q語(yǔ)言中的第一類(lèi)對(duì)象(First-class entity) Q表是*列導(dǎo)向的* Q表是從字典構(gòu)...

    syoya 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<