Posts

Showing posts from January, 2026

CST 370-30 - Algorithm Design & Analysis Week 3

 Week 3: This week we covered different algorithm design techniques and how they behave in terms of efficiency. Brute force string matching helped me see why checking every possibility becomes slow as input size grows. The exhaustive search examples, especially TSP, showed how permutations guarantee correctness but don’t scale well. I also learned how DFS and BFS work, how traversal order matters, and how to analyze recursive algorithms using divide and conquer and the Master Theorem.

CST 370-30 - Algorithm Design & Analysis Week 2

Week 2: This week focused on analyzing algorithm efficiency using asymptotic notations such as Big O, Theta, and Omega. I learned how to formally and informally describe time efficiency and applied these ideas to nonrecursive and recursive algorithms using loops and recurrence relations. The brute force design lecture helped me understand when simple approaches are acceptable and when they become inefficient. The puzzles, especially the clock hands problem, helped connect algorithmic thinking to real situations.

CST 370-30 - Algorithm Design & Analysis Week 1

 CST 370-30 - Algorithm Design & Analysis Week 1 This week in CST 370, we went over the basics of algorithm design and analysis and what to expect from the course. A big focus was on understanding how to think about problems in terms of best case and worst case scenarios, not just getting an answer. We worked on logic puzzles like the fake coin and ball matching problems, which helped me see how algorithms can be about strategy and guarantees rather than code. These problems showed how careful reasoning can minimize steps while still covering all cases, which I think will be important later in the class.