数据结构之三大查找(续)

2.b-树和b+树.
(1)b-树
一棵m阶的b-树,或为空树,或满足下面特性的m叉树
①树中每个节点至多有m棵子树。
②若不是叶子节点,至少有2棵子树。
③若不是叶子节点,至少有m/2棵子树。
④所有非终节点包含以下信息(n关键字个数,A(i)指向子树指针,K(i)存在关系A(i-1)
⑤所有叶子节点在同一层次上,并且不带信息

(2)b+树
在b-树的条件上增加
①有n棵子树的节点有n个关键字。
②所叶子节点包含关键字全部信息,及指针,关键字从小到大排序
③非终节点看成索引,含有字数最大(小)的关键字。

3.键树(数字查找树,度>=2)
为了查找方便,约定键树为有序树,兄弟间自左到右排序,$小于任何字符。
(1)以树的孩子兄弟表示键树,则每个分支节点包含3个域(symbol域:存储关键字的一个字符;first域:存储左兄弟指针;next:存储指向右兄弟指针,此时称为双链树)

查找:symbol->first->next

最大度d:关键字为单词,d=27;数字,d=11;
平均查找长度:
①关键字为随机,(1+d)/2
②关键字位数相等:h(1+d)/2

(2)Trie树(以树的多重链表表示键树)
①叶子节点(若根节点到叶子节点没分支,则压缩为一个叶子节点),
包含存储的关键字,以及指针信息

②分支节点(原话:含有d个指针域和一个指示该节点中非空指针域的个数的整数域),不设数据域,每个分支节点所表示的字符由其双亲节点中的指针所在位置决定。

查找:根节点,沿给定值相应的指针向下至叶子节点。

三 哈希表(之前博客有写)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值