This is a chance to use BST trees and linked list, you may use any of the implementations of tree classes from your text book or you can write your own.
Each unit in a Latin textbook contains a Latin-English vocabulary of words that have been used for the first time in a particular unit. Write a program that converts a set of vocabularies stored in file Latin.txt into a set of English-Latin vocabularies. Make the following assumptions:
a. Unit names are preceded by a percentage symbol – %
b. There is only one entry per line.
c. A Latin word is separated by a colon from its English equivalent(s); if there is more than one equivalent , they are separated by a comma.
To output English words in alphabetical order, create a binary search tree for each unit containing English words and lined lists of Latin equivalents.
Make sure that there is only one node for each English word in the tree. For example, there is only one node for and, although and is used twice in unit 6: with words ac and atque.
After the task has been completed for a given unit. (that is, the contents of the tree has been stored in an output file), delete the tree along with all linked lists from computer memory before creating a tree for the next unit.
Here is an example of a file containing Latin-English vocabularies:
%Unit 5
ante : before, in front of, previously
antiquus : ancient
ardeo : burn, be on fire, desire
arma : arms, weapons
aurum : gold
aureus : golden, of gold
%Unit 6
animal : animal
Athenae : Athens
atque : qnd
ac : and
aurora : dawn
%Unit 7
amo : love
amor : love
annus : year
Asia : Asia
From these units, the program should generate the following output:
%Unit 5
Ancient : antiques
arms : arma
be on fire : ardeo
before : ante
burn :ardeo
desire : ardeo
gold : aurum
golden : aureus
in front of : ante
of gold : aureus
previously : ante
weapons : arma
%Unit 6
Athens : Athenae
and : ac, atque
animal : animal
dawn : aurora
% Unit 7
Asia : Asia
love : amor, amo
year : annus