数据结构
飞_哥
这个作者很懒,什么都没留下…
展开
-
二叉排序树之删除操作
二叉排序树的查找和插入操作相对简单一些,这里就不再一一介绍,个人感觉删除操作相对复杂一些 如上图,对上图二叉树进行删除操作,假如删除无叶子节点的节点时,直接删除即可;如果删除只含有左节点或右节点的节点时只需,去掉该节点并让该节点的子节点继承该节点的位置即可。 下面是最可能出错的一条就是当删除的节点既有左节点又有右节点时的情况该如何应对: 举个例子:假如我们删原创 2015-09-15 10:11:45 · 919 阅读 · 0 评论 -
散列函数之处理散列冲突方法
1.开放定址法 所谓开发定址法就是一旦发生了冲突,就去寻找下一个空的散列地址,只要散列表足够大,空的散列地址总能找到,并将记录存入。 它的公式是:,这种也称线性探测法。可能一开始学的同学看到di不知道怎么回事,其实这个di就是当遇到冲突时是要加的数字,到底怎么加呢?道理很简单,冲突时,冲突一次就加1再计算fi,如果还冲突那就试下加2,一直到不冲突为止。 当时,被称为二次探测法,原创 2015-09-16 09:53:36 · 1035 阅读 · 0 评论 -
散列表查询(哈希表)之散列函数的构造方法
1.散列函数的构造方法 1.1 直接定址法 去关键字的某个线性函数值为散列地址:f(key)=a*key+b(a、b为常数)原创 2015-09-15 11:30:29 · 1216 阅读 · 0 评论