主页 · 12
c语言内存函数
从source位置开始向后复制num个字节到destination指向的内存位置 不会在遇到'\0'时停下来 如果source和destination有重叠,复制结果是未定义的 适用于非重叠内存区域的拷贝
哈希表封装myunordered_map和myunordered_set
SGI-STL30版本没有unorderedmap和unorderedset,但实现了hashmap和hashset作为非标准容器。其核心框架如下:
哈希表
哈希(Hash)又称散列,是一种组织数据的方式。通过哈希函数把关键字Key跟存储位置建立映射关系,查找时通过哈希函数计算出Key存储的位置,实现快速查找。
红黑树
红黑树是一种自平衡的二叉搜索树,通过对节点颜色的约束来确保树的平衡性。每个节点额外存储一个颜色位(红色或黑色),通过特定的规则约束,保证从根到叶子的任何一条路径不会比其他路径长出2倍。
模板
函数模板代表了一个函数家族 与类型无关,在使用时被参数化 根据实参类型产生函数的特定类型版本
模板进阶
类型模板参数:出现在模板参数列表中,跟在class或typename后的参数类型名称 非类型模板参数:用一个常量作为类(函数)模板的参数,在模板中可将该参数当成常量使用
AVL树
AVL树满足以下条件之一:
二叉搜索树
二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:
继承
继承(Inheritance) 是面向对象程序设计中实现代码复用的核心机制。它允许我们在保持原有类特性的基础上进行扩展,增加新的成员函数和成员变量,从而创建新的类(派生类)。
指针,引用与const的复杂关系
从右向左读: const在左边 : 指向的内容是const const在右边:指针本身是const 引用没有const:因为引用不能重新绑定 mutable是例外:可以在const函数中修改

