Simon 's Blog
» 做笔记做笔记
Toggle navigation
Simon 's Blog
HOME
总裁介绍
coper
zongcai
what
ARCH
TAGS
navigation
标签 - STL算法
SGI STL中的sort源码
? STL算法 ?
2019-07-31 18:56:44
490
0
0
[TOC] # 实现原理 STL中的sort不是普通的快排,除了对普通的快速排序进行优化,它还结合了插入排序和堆排序。根据不同的数量级别以及不同情况,能自动选用合适的排序方法。当数据量较大时采用快速排序,分段递归。一旦分段后的数据量小于某个阀值,为避免递归调用带来过大的额外负荷,便会改用插入排序;而如果递归层次过深,有出现最坏情况的倾向,还会改用堆排序。 # 内省式排序 `Introsort`
stl::set算法
? STL源码 ?
? STL算法 ?
2019-07-22 20:31:23
311
0
0
[TOC] # 并集 ``` int a[] = { 1,2,3,4,5,6, 7}; int a1[] = { 1,1,2,3,4,5,6,8,10 }; std::ostream_iterator oiter(std::cout, " "); std::multiset set1(a, a + 7); std::multiset set2(a1, a1 + 9); std
stl算法实现(lower_bound,upper_bound,binary_search,find,find_if,next_premutation,prev_premutation)
? STL源码 ?
? STL算法 ?
2019-07-22 20:27:44
636
0
0
[TOC] # 解释 - lower_bound 可插入value的第一个位置 - upper_bound 可插入value的最后一个合适的位置 # lower_bound ``` template inline ForwardIterator __mylower_bound(ForwardIterator first, ForwardIterator second, const T &va