Respond to the discussion about algorithms and their roles below using 150 words or more.
At the most basic level, an algorithm is simply a set of step-by-step instructions that we utilize to accomplish a specific task. We use algorithms every single day in our day-to-day activities: Brushing our teeth, getting dressed, driving to work, making dinner. These daily tasks which we complete are all composed of a set of instructions that starts with a certain action and ends with a certain action.
In the realm of computer programming, algorithms are utilized to enhance the efficiency, effectiveness, and functionality of the programs we create. Two such types of algorithms are searching algorithms and sorting algorithms.
Sorting algorithms are designed to sort an array of objects into a specific order. Searching algorithms are designed to compare the elements of an array to find a particular value within an array of objects. Just a few examples are search engines, the sorting of a business’ online item inventory, and sorting/searching a database of students who attend a university.
There are multiple approaches which people have taken to solve the issue of sorting and searching an array of items. Two frequently used searching algorithms are linear search and binary search. Three frequently used sorting algorithms are insertion sort, selection sort, and bubble sort.
Each of these types of algorithms have both pros and cons associated with them. The main properties that we want to keep an eye on when choosing an algorithm are memory usage, maintainability, and time complexity. It is always best to assess the situation and to use discretion when choosing which algorithm that we want to implement into our program.