随笔分类 - 数据结构与算法
摘要:第一章 综述 数学知识复习: 指数、对数、级数、模运算、证明方法(证明数据结构分析几轮最常用方法:归纳法、反证法) 递归简论 C++知识:类、细节、模板、矩阵。
阅读全文
摘要:很好的算法入门书籍,基于Python讲解,好理解。 算法的时间复杂度一般有几种,O(1),O(log N),O(N),O(N*log N),O(N2),O(N!),O(2N)。 时间复杂度指的不是算法运行的时间,而是操作次数,表达的是随着规模N增大,操作次数增长的速度。而且时间复杂度是忽略常数的,在
阅读全文
摘要:参考资料: c++程序栈 栈与递归 程序调用时堆栈变化 关于堆栈讲解
阅读全文
摘要:一、什么是红黑树??? 红黑树首先是一棵搜索二叉树,树中的每一个结点的颜色不是黑色就是红色。它的特性如下: 1、根节点是黑色 2、每一个结点不是黑色就是红色 3、不能有连续的两个红色结点 4、从任意一个结点出发,到后代中空指针的路径上,均包含相同数量的黑色结点。 例如: 二、为什么要有红黑树???
阅读全文
摘要:计算Hash冲突的概率 虽然已经很多可以选择的Hash函数,但创建一个好的Hash函数仍然是一个活跃的研究领域。一些Hash函数是快的,一些是慢的,一些Hash值均匀地分布在值域上,一些不是。对于我们的目的,让我们假设这个Hash函数是非常好的。它的Hash值均匀地分布在值域上。 在这种情况下,对于
阅读全文
摘要:先贴个头文件的设计: 参考链接: https://www.cnblogs.com/dodng/p/4367791.html https://blog.csdn.net/ds1130071727/article/details/78528626 https://blog.csdn.net/blade2
阅读全文
摘要:Hash算法中要解决一个碰撞冲突的办法,后文中描述了几种解决方法。下面代码中用的是链式地址法,就是用链表和数组实现HASH表。 Hash碰撞冲突 Hash函数的作用就是保证对象返回唯一hash值,但当两个对象计算值一样时,这就发生了碰撞冲突。如下将介绍如何处理冲突,当然其前提是一致性hash。 1.
阅读全文
摘要:l链表可以实现多种数据结构,消息队列,环形缓存等。下面先介绍消息队列的实现,后面介绍ring buf的实现。
阅读全文

浙公网安备 33010602011771号