La librairie <algorithm>

Cette librairie définie un certain nombre de fonctions génériques pouvant être utilisées sur les différentes classes de conteneurs de la STL (Standard Template Library). Ces fonctions réalisent un certains nombres d'algorithmes standard pouvant être utilisés sur ces conteneurs (tries, copies, recherches, ...).

Toutes ces fonctions partagent un point commun. En effet, elles ne travaillent pas directement sur les conteneurs, mais passent par un concept intermédiaire : le concept d'itérateur. Ce concept permet de gagner en abstraction en permettant de considérer que tous conteneurs de la STL peut se manipuler comme un tableau C. Dans un tableau C, nous utilisons la notion de pointeurs pour manipuler le tableau. Avec la STL, l'itérateur sera vu comme un pointeur accédant à la collection.

Ainsi, chaque algorithme pourra être utiliser sur une quelconque collection. Pour mieux comprendre cela, nous vous proposons de commencer par étudier l'exemple d'utilisation de la fonction std::copy