It's finally here! The end of classes for this semester! Time went by super fast and finals are so close now (next week, actually)! I'll start off my blog post with just talking about the last week of classes and then I'll look back at some of the things we've done in this course!
The last week of class wasn't too hectic. We didn't really learn too many new things except for big-oh notation which we've looked at a lot more in depth in CSC165 so it wasn't too hard. The last class we looked at some examples with big-oh notation, and discussed some key concepts we've looked at in the course. This is pretty awesome since my first final is actually next week so if we learned anything too hard or intensive I wouldn't have that much time to prepare for finals.
We also got our tests back and I unfortunately made some mistakes on the last question. It was a question using linked lists and I wasn't too careful and forgot 1) to reduce the size of the linked list when I was finished, and 2) the case in which I was using the function at the front of the linked list. I forgot that I'd have to re assign the front of the linked list to the second node if that was the case. I really have to be a lot more careful with these things, but now that I know my mistake so hopefully I'll be more aware of this.
The last assignment was also due on Friday and it was a lot easier than the other assignments. My partners and I chose option B, which is to complete the body of the functions in the starter code the professors had given us. It was a lot faster than the first two assignments. Each function and method we had to implement was a lot shorter than the ones we did in assignment two, especially much shorter than the suggest_move for minimax. For assignment one it was probably faster because we had to design how we'd implement each method and attribute for the class designs.
Looking back on the course now, I would say, it wasn't so bad. It's a big thing to say since I'm not doing outstanding, but really, it wasn't so bad. I've gotten so used to dealing with these things that they just seem so much easier. It's similar to how I look back at everything in high school and think how I could have done better because it was so easy. Learning it was hard, especially figuring it out, but once you actually get it, you don't even know how you could have missed it. It's like with recursion, easily the hardest thing I found in this course. At first I didn't really get it, and what I was really doing at all, but once I started to practice and just think about those types of problems more I got the hang of it. Finding the base case and finding the connections between smaller instances to bigger instances just came so much faster as well.
I've really learnt a lot of different things from this course, including linkedlists, tree structures, and much more. I'm excited to continue on and learn so much more in computer science! Thanks to all the TAs, professors and friends who have made this one awesome semester!