Traductions de cette page?:

C++ Algorithmes

Les fonctions suivantes sont définies dans <algorithm> et font partie de l'espace de nommage std.

Elles s'appliquent généralement sur des séquences d'éléments. Ces séquences peuvent être définies par des itérateurs sur des conteneurs de la STL.

accumulatecalcule la somme d'une séquence d'éléments
adjacent_differencecalcule les différences entre les éléments consécutifs d'une séquence
adjacent_findtrouve deux éléments adjacents identiques (ou autre relation…)
binary_searchindique si un élément est trouvé dans une séquence donnée
copycopie une séquence d'éléments vers un autre endroit
copy_backwardcopie une séquence d'élément dans l'ordre inverse
countretourne le nombre d'élément d'une séquence correspondant à une valeur donnée
count_ifretourne le nombre d'éléments pour lequel un prédicat est vrai
equalindique si deux ensembles d'éléments sont identiques
equal_rangeretourne une sous-séquence d'éléments égaux à un élément donnée
fillfixe à une valeur donnée les éléments d'une séquence
fill_nfixe à une valeur donnée les n premiers éléments d'une séquence
findtrouve la première occurrence d'une valeur dans une séquence donnée
find_endtrouve la dernière occurrence d'une valeur dans une séquence donnée
find_first_oftrouve la première occurence d'un des éléments d'une séquence dans une autre séquence
find_iftrouve le premier élément pour lequel un prédicat est vrai
for_eachapplique une fonction à chaque élément d'une séquence
generategénère une séquence à partir des résultats retourné par une fonction donnée
generate_ngénère une séquence à partir des résultats retourné par n appels à une fonction donnée
includesretourne vrai si un ensemble donné est inclus dans un autre
inner_productcalcule le produit scalaire de deux séquences
inplace_mergefusionne deux séquences ordonnées
is_heapreturns true if a given range is a heap
iter_swapéchange deux éléments pointés par des itérateurs
lexicographical_comparecompare deux éléments selon l'ordre lexicographique
lower_boundcherche le premier endroit où une valeur peut être insérée en conservant l'ordre d'une séquence
make_heapcreates a heap out of a range of elements
maxretourne le plus grand de deux éléments
max_elementretourne le plus grand d'une séquence d'éléments
mergefusionne deux séquences ordonnées vers une troisième séquence vide
minretourne le plus petit de deux éléments
min_elementretourne le plus petit d'une séquence d'éléments
mismatchtrouve la première position pour laquelle des éléments sont différents
next_permutationgenerates the next greater lexicographic permutation of a range of elements
nth_elementput one element in its sorted location and make sure that no elements to its left are greater than any elements to its right
partial_sorttrie les N premiers éléments d'une séquence
partial_sort_copycopie et trie partiellement une séquence d'élément
partial_sumcompute the partial sum of a range of elements
partitiondivise une séquence en deux groupes
pop_heapremove the largest element from a heap
prev_permutationgenerates the next smaller lexicographic permutation of a range of elements
push_heapadd an element to a heap
random_shufflerandomly re-order elements in some range
removeremove elements equal to certain value
remove_copycopy a range of elements omitting those that match a certian value
remove_copy_ifcreate a copy of a range of elements, omitting any for which a predicate is true
remove_ifremove all elements for which a predicate is true
replacereplace every occurrence of some value in a range with another value
replace_copycopy a range, replacing certain elements with new ones
replace_copy_ifcopy a range of elements, replacing those for which a predicate is true
replace_ifchange the values of elements for which a predicate is true
reversereverse elements in some range
reverse_copycreate a copy of a range that is reversed
rotatemove the elements in some range to the left by some amount
rotate_copycopy and rotate a range of elements
searchsearch for a range of elements
search_nsearch for N consecutive copies of an element in some range
set_differencecomputes the difference between two sets
set_intersectioncomputes the intersection of two sets
set_symmetric_differencecomputes the symmetric difference between two sets
set_unioncomputes the union of two sets
sortsort a range into ascending order
sort_heapturns a heap into a sorted range of elements
stable_partitiondivide elements into two groups while preserving their relative order
stable_sortsort a range of elements while preserving order between equal elements
swapswap the values of two objects
swap_rangesswaps two ranges of elements
transformapplies a function to a range of elements
uniqueremove consecutive duplicate elements in a range
unique_copycreates a copy of some range of elements that contains no consecutive duplicates
upper_boundsearches for the last place that a value can be inserted while preserving order (first place that is greater than the value)