摘要: 一、什么是红黑树??? 红黑树首先是一棵搜索二叉树,树中的每一个结点的颜色不是黑色就是红色。它的特性如下: 1、根节点是黑色 2、每一个结点不是黑色就是红色 3、不能有连续的两个红色结点 4、从任意一个结点出发,到后代中空指针的路径上,均包含相同数量的黑色结点。 例如: 二、为什么要有红黑树??? 阅读全文
posted @ 2018-06-23 23:54 Andy_Yin 阅读(2529) 评论(0) 推荐(0) 编辑
摘要: 计算Hash冲突的概率 虽然已经很多可以选择的Hash函数,但创建一个好的Hash函数仍然是一个活跃的研究领域。一些Hash函数是快的,一些是慢的,一些Hash值均匀地分布在值域上,一些不是。对于我们的目的,让我们假设这个Hash函数是非常好的。它的Hash值均匀地分布在值域上。 在这种情况下,对于 阅读全文
posted @ 2018-06-23 23:53 Andy_Yin 阅读(5029) 评论(1) 推荐(0) 编辑
摘要: auto在c++11中已经弃用。 一、auto_ptr模板 auto_ptr与shared_ptr、unique_ptr都定义了类似指针的对象,可以将new到的地址赋给这一对象,当智能指针过期时,析构函数会调用delete函数,对象将被销毁,由此内存可以自动被释放。 二、shared_ptr模板 先 阅读全文
posted @ 2018-06-23 23:51 Andy_Yin 阅读(1543) 评论(0) 推荐(0) 编辑
摘要: 一、什么是内联函数 内联函数必须是和函数体声明在一起,才有效。像这样的申明是没有效果的: 编译器只是把函数作为普通的函数声明,我们必须定义函数体: 这样我们才算定义了一个内联函数。我们可以把它作为一般的函数一样调用。但是执行速度却比一般函数的执行速度要快。 二、类中的内联函数 我们也可以将定义在类的 阅读全文
posted @ 2018-06-23 20:46 Andy_Yin 阅读(5155) 评论(0) 推荐(0) 编辑
摘要: 骆驼式命名法(Camel-Case)一词来自 Perl 语言中普遍使用的大小写混合格式,而 Larry Wall 等人所著的畅销书《Programming Perl》(O'Reilly 出版)的封面图片正是一匹骆驼。 骆驼式命名法的命名规则可视为一种惯例,并无绝对与强制,为的是增加识别和可读性。 类 阅读全文
posted @ 2018-06-23 20:15 Andy_Yin 阅读(328) 评论(0) 推荐(0) 编辑