CS311 Lab 3: Spell Checking!

Starting with the linked list demo from class, create a spell checker! The spell checker should expect a file to check, and use the dictionary of words on isoptera at /usr/share/dict/american-english. If you're using a system other than isoptera, you can download it here. Set up the spell checker so it loads the entire dictionary into a linked list. Then go through the file to check one word at a time, and check to see if it's in the dictionary. Remember to remove punctuation before comparing, and compare in a case-independent manner. One way to do that is to convert all words to lowercase (or uppercase) before putting them into the dictionary, and converting words before checking for them as well. If a word is not found in the dictionary, print it out with some sort of appropriate message.
Compare speed of dictionary creation adding new words to the front of the list, and adding them to the back (using push vs. push_back). You'll probably find a significant speed difference between the two methods.
At some point, we'll discuss better solutions for spell check dictionaries than linked lists.