In their 2019 book, The Ethical Algorithm (reference below), Kearns and Roth define an algorithm as a very precisely specified series of instructions for performing some concrete task.
They go on to say:
“The simplest algorithms—the ones we teach to our first-year computer science students—do very basic but often important things, such as sorting a list of numbers from smallest to largest. …
“One of the interesting aspects of algorithm design is that even for fundamental problems such as sorting, there can be multiple alternative algorithms with different strengths and weaknesses, depending on what our concerns are. For example, the extensive Wikipedia page on sorting lists forty-three different algorithms, with names like Quicksort, Heapsort, Bubblesort, and Pigeonhole Sort. Some are faster when we can assume the initial list is in a random order (as opposed to being in reverse sorted order, for example). Some require less memory than others, at the expense of being slower. Some excel when we can assume that each number in the list is unique (as with social security numbers).
“So even within the constraint of developing a precise recipe for a precise computational task, there may be choices and trade-offs to confront. As the previous paragraph suggests, computer science has traditionally focused on algorithmic trade-offs related to what we might consider performance metrics, including computational speed, the amount of memory required, or the amount of communication required between algorithms running on separate computers. But this book, and the emerging research it describes, is about an entirely new dimension in algorithm design: the explicit consideration of social values such as privacy and fairness.”
Atlas topic, subject, and course
Michael Kearns and Aaron Roth (2019), The Ethical Algorithm, Oxford University Press, Kindle Edition, pages 4-5.
Page created by: Ian Clark, last modified 1 March 2021.
Image: Allison Lynch, What is Algorithm – Definition, Types and Application, Edraw, at https://www.edrawsoft.com/algorithm-definition.html, accessed 1 March 2021.