Optional (but may help you to debug the following programs): modify your main concordance program so that whenever it sees a word starting with a sharp sign, e.g. #word, instead of adding it to the dictionary you should do a search immediately and print out the word together with the number of occurrences of it so far.
Re-do your concordance program from homework 3 with a red-black tree.
Re-do your concordance program from homework 3 with a hash table.
Re-do your concordance program from homework 3 with a 2-3 tree.
One problem with the concordance assignment is that it only exercises the INSERT and SEARCH functions, not DELETE. Modify your main concordance program so that whenever a word starts with a minus sign, e.g. -word, it deletes the word from the dictionary (in other words, don't count any occurrences of the word before this point). For example, if I did a concordance of this paragraph, the first occurrence of the word word would be deleted by the one with the minus sign, leaving only four occurrences.
Choose one of the above three data structures (red-black tree, hash table, or 2-3 tree) and implement DELETE so you can do this version of the concordance. (If you want to use the same main program for all three, write "stub" versions of DELETE for the other two data structures that do nothing.)