java 實現一段文字中,出現次數最多的字


代碼如下:

public static void main(String[] args) {
        String str = "大批量,之前都沒怎么注意過,這個問題確實不會,網上參考了下別人的,大體上是這個意思:"
                + "合並數據+事務的方法在較小數據量時,性能提高是很明顯的,數據量較大時(1千萬以上),"
                + "性能會急劇下降,這是由於此時數據量超過了innodb_buffer的容量,每次定位索引涉及較多的磁盤讀寫操作,"
                + "性能下降較快。而使用合並數據+事務+有序數據的方式在數據量達到千萬級以上表現依舊是良好,在數據量較大時,"
                + "有序數據索引定位較為方便,不需要頻繁對磁盤進行讀寫操作,所以可以維持較高的性能";

        char[] chars = str.toCharArray();
        HashMap<Character, Integer> map = new HashMap<Character, Integer>();
        int max = 0;
        for (char c : chars) {
            if (map.containsKey(c)) {
                int oldnum = map.get(c);
                map.put(c, oldnum + 1);
                if (max < oldnum + 1)
                    max = oldnum + 1;
            } else {
                map.put(c, 1);
            }
        }
        Set<Character> keys = map.keySet();

        for (char c : keys) {
            if (map.get(c) == max) {
                System.out.println(c + "出現了" + map.get(c) + "次 次數最多 ");
            } else {
                System.out.println(c + "出現了" + map.get(c) + "次");
            }
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM