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.