Definition of an Algorithm




An algorithm is a well-ordered collection of unambiguous and effectively computable operations that when executed produces a result and halts in a finite amount of time.

This definition comes from An Invitation to Computer Science (Gersting/Schneider)




If we can specify an algorithm to solve a problem then we can automate its solution. That which carries out the steps of an algorithm (a computing agent) just needs to be able to follow directions; not understand the concepts or ideas behind the algorithm.

The word algorithm is derived from the last name of Muhammad Al-Khowarizmi (full name: Abu Ja'far Muhammad ibn-Musa Al-Khowarizmi), a famous Persian mathematician and author of the eighth and ninth centuries. (His most famous book is Kitab al jabr w'al muqabala.)