Friday, March 7, 2014

Week 8

We've started learning about linked lists in class and some of the methods that they use to add, remove, or change elements.  A linked list at first glance looks fairly similar to a normal list, but its structure and how it's set up means that recursion plays a much larger role (and perhaps the central role) in traversing its elements. Unlike a regular list, linked lists can be thought of as containing only two elements: one item/value, followed by a reference to another linked list or None if it is the last in the chain.

At first, I had quite a bit of trouble thinking of how to go through its elements and struggled with writing new methods in labs, although I understood conceptually what linked lists were.  I think it was my association with regular lists (and using for loops to traverse them) that gave me difficulties, or maybe it was plain inexperience; either way, I plan to learn more about linked lists and recursive methods so that I can better understand this topic.

I also finished part 1 of Assignment 2, which was a basic design project for regex classes.  Since it was my first time working with (or hearing about) regexes, I was very confused as to what each operator (*, |, .) did and what exactly constituted a regular expression.  As for the actual project, I had little difficulty coming up with parent/child classes and was able to finish with relative ease; however, I would like to further work on my design skills as several aspects of the code could have been more detailed (for example, how many parent classes and which methods would be inherited).  I do want to know more about what regular expressions are used for and what their real-life applications are in the future.

No comments:

Post a Comment