Skip to main content

Posts

Showing posts from January, 2025

CST 370 Week 3 Journal

 This week explored algorithms including the brute force method by performing an exhaustive search. We also learned about two primary strategies to transverse a graph. These two methods were depth first search and breadth first search. Of the two I am more comfortable with the depth first search. I find it somewhat more simple to code an algorithm that performs a depth first search. When coding for the breadth first search I found I had to keep track of the queue and in the homework I had to keep track of what permutation produced the optimal path. I also learned about the divide and conquer strategy and how to use the master theorem to calculate time complexity. We will also have our midterm this week so I will need to review and solidify my understanding of the concepts presented in these first three weeks.

CST 370 Week 2 Journal Entry

This week I learned more about asymptotic notations. I had previously only heard of Big Oh notation, and it was interesting to know that there were two other notations, namely Big Theta and Big Omega. I feel like I have some understanding of how these notations are used to describe an algorithm's efficiency, but I know I will need to review and use these concepts to really cement them into memory.  I also learned how to analyze an algorithm's efficiency for recursive and non-recursive algorithms. For the non-recursive algorithms the process is relatively straightforward. For recursive algorithms, I learned about a process called the "backward substitution" method. I did struggle with this concept and feel that I need to review it in the coming weeks to ensure I understand the material. Overall, I would say this week introduced several challenging topics that I will need to study and review.

CST 370 Week 1 Journal Entry

 This week marked the start of a new class in my CSUMB journey. The class is CST 370 Design and Analysis of Algorithms. The first week got us introduced to the definition of an algorithm and how we use algorithms to solve problems. I do feel that the material is more challenging than some of the other classes I have previously taken and so intend to spend more time learning the concepts in this class. One of the aspects I found interesting in this class is the inclusion of a few puzzles that involved determining an algorithm that solves the given problem. I enjoy trying to solve them because they are like brain teasers that force me to think of all the possible outcomes. It can be frustrating at times, but it is also very satisfying if I am able to solve them. I will continue working and reviewing the concepts presented this week as they are the foundation for future class concepts.