Algorithms
Algorithms, as mentioned previously, are functions that take an input, process it, and provide an output. In most cases, in STL, an algorithm refers to a function that processes a set of data. Containers, such as std::vector, std::list
, and others, are used to store data collections.
One of the common tasks in a programmer’s routine is to select an efficient algorithm. For example, using the binary search technique to search a sorted vector will be significantly faster than using sequential searching. An asymptotic analysis, which considers the speed of the algorithm concerning the size of the input data, is used to compare the efficiency of algorithms. This means that we should not compare two algorithms by applying them to a container with 10 or 100 elements.
The true difference between methods becomes apparent when they’re applied to a large enough container – one with one million or even one billion elements. Verifying an algorithm’s...