Question
A homophone is one of two or more words that are pronounced alike but are different in meaning or spelling; for example, the words two,
A homophone is one of two or more words that are pronounced alike but are different in meaning or spelling; for example, the words two", too", and to". Write a Java program that uses the unordered arraylist implementation of the MyHashMap interface to find the word that has the most homophones. The file cmudict.0.7a.txt" in common/DICTIONARIES contains a pronunciation dictionary downloaded from http://www.speech.cs.cmu.edu/cgi-bin/cmudict The page also contains a detailed description of the pronunciation dictionary. The file consists of lines of the form
ABUNDANT AH0 B AH1 N D AH0 N T
The first string is the word, which is followed by one or more phonemes (or phones) that describe the pronunciation of the word. There are 39 phonemes occurring in North American English that are used in the dictionary. The collection of 39 symbols is known as the Arpabet, for the Advanced Research Projects Agency (ARPA), which developed it in the 1970's in connection with research on speech understanding.
Call your program MostHomophones. The output is a first line containing a single integer n, which is the largest number of homophones. The n homophones follow on the next n lines, one word per line.
Exercise. Considering only the MyHashMap operations 'insert', 'remove', and 'find', "give the worst-case total running time and a sequence of n operations that have that running time" if MyHashMap is implemented as:
(1) an unordered array list;
(2) an unordered linked list;
(3) an ordered array list.
State any assumptions you make on the implementations.
Submission:
You code for the project (60 points)
Your analysis of the BigO in the Exercise part. (21 points)
MyHashMap is so far an interface because being 'implemented' would mean that some of the methods would be used for the other class so that the program can implement MyHashMap. I know that there are separate methods that 'insert', 'remove', and 'find', "give the worst-case total running time and a sequence of n operations that have that running time"
Also I need to figure out how to post each of the output of each homophone in a separate file, so FileReader will be playing a huge role to this.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started