This updated information has been further expanded upon on my new website. You can find the updated details here: https://k5kc.com/cs/algorithms/find-frequency-of-a-word-in-a-book/.
Problem
Design a method to find the frequency of occurrences of any given word in a book.
Solution
Just scan the word, trim it and put in hashtable. Now, when searching lower case it and search it.Hashtable<String, Integer> setupDictionary(String[] book) { Hashtable<String, Integer> table = new Hashtable<String, Integer>(); for (String word : book) { word = word.toLowerCase(); if (word.trim() != "") { if (!table.containsKey(word)) table.put(word, 0); table.put(word, table.get(word) + 1); } } return table; } int getFrequency(Hashtable<String, Integer> table, String word) { if (table == null || word == null) return -1; word = word.toLowerCase(); if (table.containsKey(word)) { return table.get(word); } return 0; }
References
0 comments:
Post a Comment