- 博客(5)
- 资源 (5)
- 收藏
- 关注
原创 Nginx 基础架构
Web服务器设计中的关键约束性能 网络性能单次请求的延迟性网络效率可伸缩性简单性可修改性可见性可移植性可靠性Nginx 的架构设计模块化设计 高度模块化设计时Nginx 的架构基础。除了少量的核心代码,其他一切皆为模块。 特点: 高度抽象的模块接口模块接口非常简单,具有很高的灵活性配置模块的设计核心模块接口的简单化多层次、多类别的模块设计事件驱动架构 由一
2015-12-25 10:55:11 379
原创 不相交集ADT
按大小求并和按高度求并,保证所有的树的深度最多是O(logN) Find操作和表示x的节点的深度成正比。//不相交集ADTconst int NumSets = 8;//不相交集合的类型声明typedef int DisjointSet[NumSets+1];typedef int SetType;//初始化例程void InitializeDisjointSet(DisjointSet
2015-12-03 16:28:53 318
原创 开放地址散列表
开放地址散列表(open addressing hashing):是一种不使用链表解决冲突的方法。如果有冲突发生,那么就要尝试选择另外的单元,直到找出空的单元为止。1.线性探测法 2.平方探测法 3.双散列//开放地址散列表//类型声明enum KindOfEntry{ legitimate, empty, deleted};struct HashEntry{
2015-12-02 15:58:30 622
原创 分离链接散列表
分离链接散列表的实现 做法:将散列到同一个值的所有元素保留到一个表中。//分离链接散列表 separate chaining//template<typename T>struct ListNode;//template<typename T>typedef struct ListNode* Position;typedef struct ListNode* List;struct Li
2015-12-01 21:18:59 438
原创 归并排序
归并排序 运行时间O(NlogN) 需要将数据拷贝到临时数组再拷贝回来,严重放慢了排序的速度。 对于重要的内部排序应用而言,还是选择快速排序。 合并的例程是大多数外部排序算法的基石。//归并排序//驱动程序template<typename T>void MergeSort(T A[], int N){ T *tmp_array = new T[N]; //tmp_ar
2015-12-01 16:58:28 450
深度探索C++对象模型
2015-11-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人