摘要: ``` void* my_memcpy(void* dst, void* src, int n) { if (dst == nullptr || src == nullptr || n psrc&& pdst < psrc + n) //{ // pdst = pdst + n - 1; // psrc = psrc + n - 1; // while (n--) // * pdst-- = *p 阅读全文
posted @ 2020-04-24 01:13 新叽 阅读(272) 评论(0) 推荐(0) 编辑
摘要: ``` template class share_ptr { private: //使用int *是为了每一个shared_ptr的count成员都指向同一个引用次数,每一个shared_ptr(绑定相同_ptr)操作的是同一个引用次数。 int* count;//引用计数 T* my_ptr; // 被封装的指针 public: //构造函数 share_ptr(T* p) :count(new 阅读全文
posted @ 2020-04-24 00:57 新叽 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 开放寻址法和链表法 开放寻址法 核心思想是,如果出现了散列冲突,我们就重新探测一个空闲位置,将其插入。 (1) 线性探测:我们就从当前位置开始,依次往后查找,看是否有空闲位置,直到找到为止。还记得我们刚讲的查找操作吗?在查找的时候,一旦我们通过线性探测方法,找到一个空闲位置,我们就可以认定散列表中不 阅读全文
posted @ 2020-04-24 00:55 新叽 阅读(897) 评论(0) 推荐(0) 编辑