上节在学习第二级配置器时了解了第二级配置器通过内存池与自由链表来处理小区块内存的申请。但只是对其概念进行点到为止的认识,并未深入探究。这节就来学习一下自由链表的填充和内存池的内存分配机制。 refill()函数——重新填充自由链表 前情提要,从上节第二级配置器的源码中可以看到,在空间配置函数allo ...
分类:
其他好文 时间:
2019-10-13 17:08:52
阅读次数:
98
上节学习了内存配置后的对象构造行为和内存释放前的对象析构行为,在这一节来学习内存的配置与释放。 C++的内存配置基本操作是::operator new(),而释放基本操作是::operator delete()。这两个全局函数相当于C的malloc() 和free() 函数。而SGI正是以mallo ...
分类:
其他好文 时间:
2019-10-13 17:05:05
阅读次数:
78
适配器(adapters): 概念上类似于设计模式中的适配,此处STL中的适配器可对组件的组合、灵活运用扮演重要角色。 STL中适配器主要有:容器适配器、迭代器适配器、仿函数适配器 容器适配器: queue(先进先出)、stack(先进后出)、priority_queue(优先队列)适配器,即que... ...
分类:
其他好文 时间:
2019-10-13 15:12:37
阅读次数:
102
2153: D.ly的排队问题 Description 马上要上体育课了,上体育课之前总归是要排个队的,ly作为班长,怎么排队的问题只能由她来解决,但是马上要上课了,ly又不清楚所有人的身高,她又不好意思问每个人的身高,因为这样会显的自己很不负责,于是她只能通过肉眼观察...那么问题来了,她只能观察 ...
分类:
编程语言 时间:
2019-10-12 21:01:49
阅读次数:
111
浅谈归并排序 排序算法有很多,今天让我说一说: 冒泡选择和插入,希尔基数和堆桶; 还有快排很好写,STL大法没得说。 还有一个叫归并,时间稳定不爆锅。 —— 一个会说相声的博主的引言 相比于一些复杂度不太稳定的排序算法(比如快排,最坏的时候会退化成$O(n^2)$级别的)或者时间稳定但是本来就是$O ...
分类:
编程语言 时间:
2019-10-11 19:59:42
阅读次数:
79
第二道构造题 不把金华考生当人系列。 题解OJ上有,这里不赘述 关键是此题代码如果写的好只需50行,写的不好可能要200行。 这里给出100行的丑陋代码(懒人必备STL vector,省了很多代码) c include using namespace std; define go(i,a,b) fo ...
分类:
其他好文 时间:
2019-10-11 12:26:38
阅读次数:
72
pat,pta,树,dfs,图论,stl,map,排序,lca ...
分类:
其他好文 时间:
2019-10-11 00:47:43
阅读次数:
92
STL:c++标准模板库,对常见的数据结构进行封装,包含一些通用类型的算法。string类:一、构造(常用四个)string()string(conststring&str)拷贝string(constchar*)C风格string(size_tn,charc)单个字符赋值n次strings1;strings2;s1="hello";s2=‘!‘;str
分类:
其他好文 时间:
2019-10-11 00:31:40
阅读次数:
114
stl_iterator_base.h : 迭代器类型萃取、特性; 几个特别的迭代器标签tag:input_iterator_tag、output_iterator_tag、forward_iterator_tag、bidirectional_iterator_tag、random_access_i... ...
分类:
其他好文 时间:
2019-10-10 13:02:14
阅读次数:
149