When trying to understand data structures and algorithms it can seem like it can be a little overwhelming. Breaking it down to the lowest level will help in understanding these topics. As stated by Vahid, Lysecky, Vahid and Givargis (2015) an algorithm “is a sequence of steps for accomplishing a task”. Searching for a given value is a good example where a good algorithm would come in handy. A linear search will iterate through different values that will stop when it has either found the value of a value or when there is no more value to check. A better choice would be a binary search algorithm. Instead of iterating through each value in a list, it cuts the list in half and searches on either side and continues the process until the value is found. You must ensure that the values are sorted before applying a binary search algorithm. This type of algorithm can find values a lot more efficiently than a linear search algorithm. There are many search algo...