//****************************基本算法*****************************

/*

stl算法总览,不在stl标准规格的sgi专属算法,都以 *加以标记

算法名称             
算法用途         质变                  
所在文件

accumulate          元素累计           
否                   <stl_numeric.h>

adjacent_difference 相邻元素的差额      
是 if in-place       <stl_numeric.h>

adjacent_find       查找相邻而重复      
否                   <stl_algo.h>

(或符合某条件)的元素

binary_search       二分查找           
否                   <stl_algo.h>

Copy                复制              
是 if in-place       <stl_algobase.h>

Copy_backward      逆向复制            
是 if in-place       <stl_algobase.h>

Copy_n *            复制n个元素        
是 if in-place       <stl_algobase.h>

count               计数              
否                   <stl_algo.h>

count_if            在特定条件下计数    
否                   <stl_algo.h>

equal            判断两个区间是否相等    
否                   <stl_algobase.h>

equal_range      试图在有序区间中寻找

某值(返回一个上下限区间) 
否                    <stl_algo.h>

fill                改填元素值         
是                    <stl_algobase.h>

fill_n              改填元素值,n次     
是                    <stl_algobase.h>

find                循序查找           
否                   <stl_algo.h>

find_if         循序查找符合特定条件者   
否                    <stl_algo.h>

find_end        查找某个子序列的最后     
否                   <stl_algo.h>

一次出现点

find_first_of   查找某些元素的首次出现点  
否                   <stl_algo.h>

for_each        对区间内的每一个元素施行  
否                   <stl_algo.h>

某操作

generate        以特定操作之运算结果     
是                   <stl_algo.h>

填充特定区间内的元素

generate_n      以特定操作之运算结果     
是                   <stl_algo.h>

填充n个元素

includes        是否涵盖于某序列之中     
否                   <stl_algo.h>

inner_product       内积              
否                   <stl_numeric.h>

inplace_merge   合并并就地替换(复写上去) 
是                   <stl_algo.h>

iota *          在某区间填入某指定值的   
是                   <stl_numeric.h>

递增序列

is_heap *       判断某区间是否为一个heap 
否                   <stl_algo.h>

is_sorted *     判断某区间是否已排序     
否                   <stl_algo.h>

iter_swap           元素互换           
是                   <stl_algobase.h>

lexicograpghical_  以字典顺序进行比较    
否                  <stl_numeric.h>

compare

lower_bound     将指定元素插入区间之内    
否                   <stl_algo.h>

而不影响区间之原本排序的最低位置

max                 最大值             
否                   <stl_algobase.h>

max_element       最大值所在位置        
否                    <stl_algo.h>

merge               合并两个序列        
是 if in-place        <stl_algo.h>

min                 最小值             
否                    <stl_algobase.h>

min_element       最小值所在位置        
否                    <stl_algo.h>

mismatch            找出不匹配点        
否                    <stl_algobase.h>

next_permutation    获得下一个排列组合   
是                    <stl_algo.h>

nth_element     重新安排序列中的第n个    
是                    <stl_algo.h>

元素的左右两端

partial_sort        局部排序           
是                    <stl_algo.h>

partial_sort_copy  局部排序并复制到他处  
是 if in-place        <stl_algo.h>

partial_sum         局部求和           
是 if in-place        <stl_numeric.h>

partition           分割              
是                    <stl_algo.h>

prev_permutation    获得前一个排列组合  
是                     <stl_algo.h>

power *             幂次方。表达式可指定 
否                    <stl_numeric.h>

random_suffle       随即重排元素        
是                    <stl_algo.h>

random_sample *     随即取样           
是 if in-place        <stl_algo.h>

random_sample_n *   随即取样           
是 if in-place        <stl_algo.h>

remove           删除某类元素(但不删除)  
是                    <stl_algo.h>

remove_copy      删除某类元素并将结果    
是                    <stl_algo.h>

复制到另一个容器

remove_if          有条件地删除某类元素  
是                    <stl_algo.h>

remove_copy_if   有条件地删除某类元素并将 
是                    <stl_algo.h>

结果复制到另一个容器

replace             替换某类元素        
是                    <stl_algo.h>

replace_copy     替换某类元素,并将结果   
是                    <stl_algo.h>

复制到另一个容器

replace_if          有条件地替换        
是                    <stl_algo.h>

replace_copy_if  有条件地替换,并将结果   
是                    <stl_algo.h>

复制到另一个容器

reverse              反转元素次序       
是                    <stl_algo.h>

reverse_copy     反转元素次序并将结果     
是                   <stl_algo.h>

复制到另一个容器

rotate                  旋转           
是                    <stl_algo.h>

rotate_copy       旋转,并将结果复制到    
是                    <stl_algo.h>

另一个容器

search              查找某个子序列       
否                    <stl_algo.h>

search_n         查找连续发生n次的子序列  
否                    <stl_algo.h>

set_difference       差集              
是 if in-place        <stl_algo.h>

set_intersection     交集              
是 if in-place        <stl_algo.h>

set_symmetric_      对称差集            
是 if in-place        <stl_algo.h>

difference

set_union            并集              
是 if in-place        <stl_algo.h>

sort                 排序              
是                    <stl_algo.h>

stable_partition 分割并保持元素的相对次序  
是                    <stl_algo.h>

stable_sort      排序并保持等值元素的     
是                    <stl_algo.h>

相对次序

swap               交换(对调)           
是                    <stl_algobase.h>

swap_ranges         交换(指定区间)       
是                    <stl_algo.h>

transform         以两个序列为基础,交互   
是                    <stl_algo.h>

作用产生第三个序列

unique            将重复的元素折叠缩编,   
是                    <stl_algo.h>

使成唯一

unique_copy       将重复的元素折叠缩编,   
是 if in-place        <stl_algo.h>

使成唯一,并复制到他处

upper_bound      将指定元素插入区间之内    
否                    <stl_algo.h>

而不影响区间之原本排序

的最高位置

make_heap           制造一个heap        
是                    <stl_heap.h>

pop_heap           从heap取出一个元素    
是                    <stl_heap.h>

push_heap          将元素推进heap内      
是                    <stl_heap.h>

sort_heap           对heap排序          
是                    <stl_heap.h>

*/


stl源码剖析 详细学习笔记 算法总览的更多相关文章

  1. stl源码剖析 详细学习笔记 算法(1)

    //---------------------------15/03/27---------------------------- //算法 { /* 质变算法:会改变操作对象之值 所有的stl算法都 ...

  2. stl源码剖析 详细学习笔记 算法(2)

    //---------------------------15/03/29---------------------------- //****************************set相 ...

  3. stl源码剖析 详细学习笔记 算法(5)

    //---------------------------15/04/01---------------------------- //inplace_merge(要求有序) template< ...

  4. stl源码剖析 详细学习笔记 算法(4)

    //---------------------------15/03/31---------------------------- //lower_bound(要求有序) template<cl ...

  5. stl源码剖析 详细学习笔记 算法(3)

    //---------------------------15/03/30---------------------------- //min_element template<class Fo ...

  6. stl源码剖析 详细学习笔记 hashtable

    //---------------------------15/03/24---------------------------- //hashtable { /* 概述: sgi采用的是开链法完成h ...

  7. stl源码剖析 详细学习笔记 set map

    // //  set map.cpp //  笔记 // //  Created by fam on 15/3/23. // // //---------------------------15/03 ...

  8. stl源码剖析 详细学习笔记 RB_tree (2)

    //---------------------------15/03/22---------------------------- //一直好奇KeyOfValue是什么,查了下就是一个和仿函数差不多 ...

  9. stl源码剖析 详细学习笔记 RB_tree (1)

    // //  RB_tree_STL.cpp //  笔记 // //  Created by fam on 15/3/21. // // #include "RB_tree_STL.h&q ...

随机推荐

  1. .net 页面传参方式总结

    一.使用Querystring Querystring是一种非常简单的传值方式,其缺点就是:安全性低.会把要传送的值显示在浏览器的地址栏中(也就是不需要保密得参数),并且在此方法中不能够传递对象,参数 ...

  2. Java语言的主要特点

    Java语言有很多的优点,可靠.安全.编译和解释型语言.分布式.多线程.完全面向对象.与平台无关性等等. 与平台无关性 Java语言最大的优势在于与平台无关性,也就是可以跨平台使用. 绝大多数的编程语 ...

  3. [2018HN省队集训D9T1] circle

    [2018HN省队集训D9T1] circle 题意 给定一个 \(n\) 个点的竞赛图并在其中钦定了 \(k\) 个点, 数据保证删去钦定的 \(k\) 个点后这个图没有环. 问在不删去钦定的这 \ ...

  4. Json.Net用法

    基本用法 Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和Entity的.下面分别举例说明序列化和反序列化. DataTable: //序列 ...

  5. Alpha冲刺报告(8/12)(麻瓜制造者)

    今日已完成 邓弘立: 完成了对主页UI控件的更新 符天愉: 没有完成留言模块,只是完成了留言的查询并且将留言多级回复格式化,同时和队友一起部署了商品发布的接口 江郑: 经过了这几天的编码,需求方面的数 ...

  6. PyQt5---firstwindow

    # -*- coding:utf-8 -*- ''' Created on Sep 13, 2018 @author: SaShuangYiBing ''' import sys from PyQt5 ...

  7. python第三十四课——2.匿名函数配合容器函数的使用

    匿名函数配合容器函数的使用(了解) 1.匿名函数配合列表对象使用 lt=[lambda x:x**2,lambda x:x**3,lambda x:x**4] for i in lt: print(i ...

  8. JVM打印加载类的详情信息

    使用JVM参数即可:-XX:+TraceClassLoading

  9. 青岛大学开源OJ平台搭建

    源码地址为:https://github.com/QingdaoU/OnlineJudge 可参考的文档为:https://github.com/QingdaoU/OnlineJudgeDeploy/ ...

  10. ajax回退的解决方案

    http://www.cnblogs.com/snandy/archive/2011/09/18/2180102.html