zoukankan      html  css  js  c++  java
  • algorithm 头文件

    非修改性序列操作(12个)

    循环

    对序列中的每个元素执行某操作

    for_each()

    查找

    在序列中找出某个值的第一次出现的位置

    find()

    在序列中找出符合某谓词的第一个元素

    find_if()

    在序列中找出一子序列的最后一次出现的位置

    find_end()

    在序列中找出第一次出现指定值集中之值的位置

    find_first_of()

    在序列中找出相邻的一对值

    adjacent_find()

    计数

    在序列中统计某个值出现的次数

    count()

    在序列中统计与某谓词匹配的次数

    count_if()

    比较

    找出两个序列相异的第一个元素

    mismatch()

    两个序列中的对应元素都相同时为真

    equal()

    搜索

    在序列中找出一子序列的第一次出现的位置

    search()

    在序列中找出一值的连续n次出现的位置

    search_n()

    修改性序列操作(27个)

    复制

    从序列的第一个元素起进行复制

    copy()

    从序列的最后一个元素起进行复制

    copy_backward()

    交换

    交换两个元素

    swap()

    交换指定范围的元素

    swap_ranges()

    交换由迭代器所指的两个元素

    iter_swap()

    变换

    将某操作应用于指定范围的每个元素

    transform()

    替换

    用一个给定值替换一些值

    replace()

    替换满足谓词的一些元素

    replace_if()

    复制序列时用一给定值替换元素

    replace_copy()

    复制序列时替换满足谓词的元素

    replace_copy_if()

    填充

    用一给定值取代所有元素

    fill()

    用一给定值取代前n个元素

    fill_n()

    生成

    用一操作的结果取代所有元素

    generate()

    用一操作的结果取代前n个元素

    generate_n()

    删除

    删除具有给定值的元素

    remove()

    删除满足谓词的元素

    remove_if()

    复制序列时删除具有给定值的元素

    remove_copy()

    复制序列时删除满足谓词的元素

    remove_copy_if()

    唯一

    删除相邻的重复元素

    unique()

    复制序列时删除相邻的重复元素

    unique_copy()

    反转

    反转元素的次序

    reverse()

    复制序列时反转元素的次序

    reverse_copy()

    环移

    循环移动元素

    rotate()

    复制序列时循环移动元素

    rotate_copy()

    随机

    采用均匀分布来随机移动元素

    random_shuffle()

    划分

    将满足某谓词的元素都放到前面

    partition()

    将满足某谓词的元素都放到前面并维持原顺序

    stable_partition()

    序列排序及相关操作(27个)

    排序

    以很好的平均效率排序

    sort()

    排序,并维持相同元素的原有顺序

    stable_sort()

    将序列的前一部分排好序

    partial_sort()

    复制的同时将序列的前一部分排好序

    partial_sort_copy()

    第n个元素

    将第n各元素放到它的正确位置

    nth_element()

    二分检索

    找到大于等于某值的第一次出现

    lower_bound()

    找到大于某值的第一次出现

    upper_bound()

    找到(在不破坏顺序的前提下)可插入给定值的最大范围

    equal_range()

    在有序序列中确定给定元素是否存在

    binary_search()

    归并

    归并两个有序序列

    merge()

    归并两个接续的有序序列

    inplace_merge()

    有序结构上的集合操作

    一序列为另一序列的子序列时为真

    includes()

    构造两个集合的有序并集

    set_union()

    构造两个集合的有序交集

    set_intersection()

    构造两个集合的有序差集

    set_difference()

    构造两个集合的有序对称差集(并-交)

    set_symmetric_difference()

    堆操作

    向堆中加入元素

    push_heap()

    从堆中弹出元素

    pop_heap()

    从序列构造堆

    make_heap()

    给堆排序

    sort_heap()

    最大和最小

    两个值中较小的

    min()

    两个值中较大的

    max()

    序列中的最小元素

    min_element()

    序列中的最大元素

    max_element()

    词典比较

    两个序列按字典序的第一个在前

    lexicographical_compare()

    排列生成器

    按字典序的下一个排列

    next_permutation()

    按字典序的前一个排列

    prev_permutat

  • 相关阅读:
    google的几道面试题
    轮盘赌算法
    基于packstack的openstack单节点安装
    攻克python3-字典(第四篇)
    攻克python3-列表与元组(第三篇)
    攻克python3-字符串(第二篇)
    攻克python3(第一篇)
    二维数组
    小白对c语言指针的基础总结
    小白对c语言数组的基础总结
  • 原文地址:https://www.cnblogs.com/wshyj/p/6297417.html
Copyright © 2011-2022 走看看