Contents A-Z
    A-B
    C
    D-E
    F
    G-H
    I
    L
    M
    N
    P
    R
    S
    T
    U-Z

    Standard Range Algorithms C++20 Standard Range Algorithms C++20 Range Algos

    • single range objects (containers/views) can be used as input (before C++20: only iterator pairs)
    • input requirements are checked using Concepts
    • don't take part in Argument Dependend Lookup (= look up a function in namespaces of its arguments)

    Non-Modifying Operations Non-Modifying Non-Mod.

    Existence Queries Existence

    Finding / Locating Elements Locate

    Find Single Elements

    find the 1st matching position in rangeS of any element contained in rangeW

    Find Consecutive Runs of Equal Elements
    Find Subranges

    Comparing Ranges Compare

    Binary Search of Sorted Ranges Binary Search Binary Search

    Minimum / Maximum Min/Max

    Structural Properties Structural

    Traversing Ranges Traversal

    Copying / Moving / Swapping Elements Copy/Move/Swap Copy/Move

    Random Sampling
    Swapping

    Reordering Elements Reordering Reorder

    Shifting Shift

    Shift Randomly Randomly

    Sorting Sort

    Partitioning Partition

    Permutations Permute

    Heap Operations Heaps

    for using contiguous containers (std::array, std::vector, …) as a max heap, i.e., a (conceptual) binary tree where each parent has a larger value than its children

    Modifying Elements Modify

    Changing / Replacing Values

    Removing Remove

    Sorted Range Operations Sorted Ranges

    Sorted Ranges As Sets

    Beginner's Guide Articles Guide Articles