第1页共22页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共22页哈希树(HashTree)罗堃吴朝宏从2000年开始,作者开始研究基于TCP/IP的短信息传输技术
这种技术目前在国际上的标准被成为SMPP(ShortMessagePeertoPeerProtocol)
SMPP协议是一种支持异步传输模式(AsynchronizedTransmissionMode)的信息传输方式
这种异步方式主要体现在两个地方:传递信息和等待确认
在为电信运营商编写软件的过程当中,解决大容量(百万用户以上)要求下的快速查找与匹配成为实现这个系统的核心任务
作者在反复设计整个过程中曾经尝试过很多种方式和算法,但都未能取得满意的效果
最终不得不自己开始设计针对这种系统的特殊存储模式
并在这个过程中,找到了一种比较理想的数据存储结构——哈希树(HashTree)
一、查找算法在各种数据结构(线性表、树等)中,记录在结构中的相对位置是随机的,和记录的关键字之间不存在确定的关系
因此在机构中查找记录的时需要进行一系列和关键字的比较
这一类的查找方法建立在“比较”的基础上
在顺序查找时,比较的结果为“=”与“¿”两种可能
在折半查找、二叉排序树查找和B−树查找时,比较的结果为“¿”、“=”与“¿”三种可能
查找的效率依赖于查找过程中所进行的比较次数
为确定记录在查找表中的位置,需和给定值进行比较的关键字个数的期望值成为查找算法在查找成功时的平均查找长度(AverageSearchLength)
下面我们简单讨论一下在含有n个数据记录的结构中,各种查找算法的平均查找长度
第2页共22页第1页共22页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共22页在等概率的情况下,顺序查找的平均查找长度为:ASLss=n+12对于折半查找(表要求是顺序表),在n