一种海量电话号码的查找方法

文档序号:6368048阅读:688来源:国知局
专利名称:一种海量电话号码的查找方法
技术领域
本发明属于电信通讯技术领域,特别涉及ー种海量电话号码的查找,及该方法在电信增值业务中的应用。
背景技术
中国各大电信运营商的用户数都是以亿为单位,各种全网用户的增值业务系统常常需要对海量的电话号码进行查找定位。常见的算法有顺序查找,查找性能是O (η),平均查找长度为(η+1)/2,插入性能是O (I),随着 样本数据的增多,查找效率线性下降;二分法查找,性能是O (log2 η),平均查找长度为log2(n+l)-l,插入性能是0(η) ;ニ叉排序树的查找和插入性能介于顺序查找与二分法查找之间;哈希表法查找和插入性能往往可以得达是0(1),但哈希表法是一空间来换取查找效率的,随着样本数据的越大,对空间的要求越高。千万级的电话号码面前,以上的算法都不大适用。要一个新的算法来满足千万级的电话号码的查找需要。

发明内容
本发明的目的是针对千万级的电话号码情况下,现有的查找算法无法满足在有限的存储空间下实现性能是O (I)查找的电话号码问题,提供一种高效率的解决方法,可以很好的满足空间和时间的要求。为了实现发明目的,采用的技术方案如下—种海量电话号码的查找方法,其原理由基于采用了ニ维整形数组和特定的哈希算法结合,实现高效的查找方法。ニ维整形数组,其原理是把11位的电话号码分成两部分——后面的5位字符串和前面的6位字符串,通过哈希算法得到数组下标。电话号码的特点是前面6位俗称是H码,有效值范围远远小于1,000, 000,分开处理可以大大减少对空间的要求。另外,有6位字符串得到的哈希值,可以控制在32位的整形数值以内,直接使用哈希值作为数组下标,查找的性能为O (I)。哈希算法,将任意长度的ニ进制值映射为固定长度的较小ニ进制值,这个小的ニ进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。哈希表是根据设定的哈希函数H(key)和处理冲突方法将ー组关键字映象到ー个有限的地址区间上,并以关键字在地址区间中的象作为记录在表中的存储位置,这种表称为哈希表或散列,所得存储位置称为哈希地址或散列地址。作为线性数据结构与表格和队列等相比,哈希表无疑是查找速度比较快的ー种。分组后电话号码的特点都是由十个阿拉伯数字组成,最多是6个数字字符。H (key) = F (keyO) +F (keyl) +F (key2) +F (key3) +F (key4) +F (key5)使用上述的公式,可以得到ー个整形数字,作为数组下标,实现0(1)级别的查找。
数字字符的映射算法,其原理是使用数字的ASCII码减去0x30,得到数字字符的映射值。通过这个算法,得到数字’ O’的值为0,数字’ I’的值为1,如此类推。此外,为了区分‘0’和空的区別,定义空的映射值为10。11进制的算法有上述的映射算法得到11个映射有效值,从O到10。所以F(key)是使用11进制。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图是本发明的通过被叫字段查找用户信息的流程图。
具体实施例方式本专利的实施场景为,用户发起呼叫,经过信令平台;信令平台把漏话信息传递给漏话平台;漏话平台判断是否被叫号码是否开通了漏话业务,如果是的话,就通过短信平台向被叫用户发出漏话信息。实施流程为I.信令平台向漏话平台传递漏话数据,传递參数用户主叫号码、被叫号码。通讯协议TCP,信令平台是客户端,漏话平台是服务端。2.漏话平台把被叫号码按长度分为两部分,根据数字的映射和11进算法,分别得到Keyl和Key2 ;以Keyl和Key2为ニ维数组的下标,高效地定位到用户信息。3.漏话平台根据用户的信息决定是否向短信平台发漏话短信。通讯协议TCP,短信平台是服务端,漏话平台是客户端。以上所述仅是本发明的具体实施方式
,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.ー种海量电话号码的查找方法,其特征在于采用了ニ维整形数组和特定的哈希算法结合,实现高效的查找方法。
2.根据权利要求I所述的ニ维整形数组,其特征在于将11位的电话号码分成两部分——后面的5位字符串和前面的6位字符串。
3.根据权利要求I所述的ニ维整形数组,其特征在于通过特定的哈希算法,把字符串转换为整形数值,作为数组的下标。
4.根据权利要求3所述的哈希算法,其保护特征在于使用建立数字字符的映射算法,解决号码“O”的问题。
5.根据权利要求3所述的哈希算法,其保护特征在于使用11进制的方法,解决10个有效字符和空字符的问题。
全文摘要
本发明提供了一种通过二维整形数组和特定的哈希算法结合,实现高效的电话号码的查找方法以及在电信领域漏话业务的应用。其特征在于通过特定的哈希算法,由字符串查找转化为数组下标查找,提高查找的效率;通过二维数组减少数组下标的可能范围,从而减少对内存空间需求的。该方法用以解决海量电话号码高效查找定位的问题。
文档编号G06F17/30GK102693277SQ201210109680
公开日2012年9月26日 申请日期2012年4月11日 优先权日2012年4月11日
发明者宁学军, 张少文, 邓从健 申请人:佳都新太科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1