We often wish to compare different algorithms for the same
problem, in order to select the one best suited to our requirements.
The main features of interest are:
– Correctness: the algorithm solves the problem for all legal
inputs
– Efficiency: how efficient it is (how much time, memory
storage, or other resources it uses?).
• The same algorithm can be implemented by very different
programs written in different programming languages, by
programmers of different levels of skill, and then run on
different computer platforms under different operating
systems.