Looking back at the HW1 assignment, I'm amazed at how much progress I've made. I've really come a long way from when access modifiers seemed like an abstract concept. I know understand how they control access to class members and ensure data encapsulation. I remember how intimidating file handling and exceptions were at the start. Now, reading from and writing to files, along with handling exceptions gracefully, feels much more familiar. One of my biggest victories is how comfortable I've become with extending classes and creating subclasses. My debugging skills have also significantly improved, transforming from a frustrating experience to a more efficient process of pinpointing and fixing issues. I've learned to organize and refactor my code for better readability and efficiency. Reflecting on HW1 more in depth, I tackled reading from a file, counting character occurrences, implementing sorting algorithms, and ensuring my code worked as expected, which all seemed challenging back then. It's easy to focus on the negatives, but I've made great progress in understanding and applying these concepts. I'm happy with how far I've come, and I'll keep this positive momentum going as I continue my coding journey!
This week I focused a lot on understanding time complexity and recursive analysis. It was challenging at first to figure out how to break down recursive functions and write the correct recurrence relations. Applying the Master Theorem was especially tough because I had to carefully identify each part of the formula and decide which case applied. I also spent time reviewing the difference between Big O, Big Omega, and Big Theta, which helped me better understand how to describe the efficiency of an algorithm. These concepts took time to click but working through examples really helped.
Comments
Post a Comment