一种业务关系二叉树节点修剪方法及装置制造方法及图纸

技术编号:10636003 阅读:246 留言:0更新日期:2014-11-12 11:35
本发明专利技术涉及一种业务关系二叉树节点修剪方法及装置,包括以下步骤:将待修剪的二叉树使用字符串表达式进行描述;根据字符串表达式构造特殊二叉树,特殊二叉树中每个节点用于存储本身的位置属性信息及与节点对应的父节点的位置属性信息和子节点相关位置信息;根据待修剪的业务场景的数量,为每个业务场景复制一个字符串表达式;分别根据每个节点在特殊二叉树中存储的本身的位置属性信息及与节点对应的父节点的位置属性信息,修剪每个业务场景的字符串表达式;根据所有不同的修剪后的字符串表达式构造二叉树,并将构造得到的二叉树与相应的业务场景匹配。本发明专利技术节约存储空间,同时减少时间损耗,提高系统性能。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及一种业务关系二叉树节点修剪方法及装置,包括以下步骤:将待修剪的二叉树使用字符串表达式进行描述;根据字符串表达式构造特殊二叉树,特殊二叉树中每个节点用于存储本身的位置属性信息及与节点对应的父节点的位置属性信息和子节点相关位置信息;根据待修剪的业务场景的数量,为每个业务场景复制一个字符串表达式;分别根据每个节点在特殊二叉树中存储的本身的位置属性信息及与节点对应的父节点的位置属性信息,修剪每个业务场景的字符串表达式;根据所有不同的修剪后的字符串表达式构造二叉树,并将构造得到的二叉树与相应的业务场景匹配。本专利技术节约存储空间,同时减少时间损耗,提高系统性能。【专利说明】一种业务关系二叉树节点修剪方法及装置
本专利技术涉及一种二叉树节点修剪方法,特别涉及一种业务关系二叉树节点修剪方 法及装置。
技术介绍
业务关系二叉树的定义:在电信系统中,一个套餐业务会包含多个子业务,不同的 子业务对不同的场景和条件进行优惠,比如一个套餐业务X会包含:拨打长途优惠子业务 XI、漫游拨打优惠子业务X2、本地拨打优惠子业务X3、本地拨打亲情号码优惠子业务X4,同 时业务套餐的子业务之间会存在一些关系,比如互斥、叠加,如上业务套餐中子业务XI和 X2之间肯定是互斥的关系,而子业务X3和X4的关系是可叠加优惠的。为了描述这些子业 务之间的关系,我们引入了业务关系二叉树的概念。 话单的定义:就是用户在拨打实际电话完成后产生的文件记录(文件记录包括比 如:用户拨打的地点、拨打对端号码、通话时长等信息),话单会按照用户的在拨打的地点 以及拨打的对方号码,有一个简单的分类,比如拨打长途、漫游拨打、本地拨打、本地拨打亲 情号等° 对用户拨打的电话产生的话单进行计费,就是使用套餐业务关系二叉树进行遍历访 问计费的过程,默认访问顺序是前序遍历,对上述场景的计费和二叉树访问举例说明如下: 如果话单为拨打长途,假设遍历访问到XI,判断话单是否满足XI的条件,即XI子 树满足条件,执行优惠,二叉树的遍历访问结束。 如果话单为漫游拨打,话单不满足XI节点条件,则继续访问,按照访问的顺序要 访问到X2, X2满足话单条件,执行优惠,则停止二叉树的遍历。 如果话单为本地拨打,XI和X2都不满足,则需要继续访问,发现X3和X4的关系 是可叠加,则需要判断X3是否满足和X4是否满足条件,如果都满足,则比较执行优惠,取优 惠量最大的子业务,二叉树访问结束。 如果话单为其他类型的话单,则整个二叉树的子业务节点都不满足条件,则整颗 树访问结束后,不会执行任何动作。 通过上面的例子我们会发现,对于一个话单的不同场景而言,比如长途拨打,有效 的子业务的个数是有限的,在实际处理过程中我们对针对不同的场景把原先的二叉树进行修 剪,保留有用的满足本场景的子业务节点,这样减少递归的次数和逻辑判断,提高计费效率。 对业务关系二叉树进行修剪,一般的修剪规则为:对叶子节点进行修剪,若叶子节 点不满足某种修剪场景的条件,则被修剪掉,另外相邻的一个左或右节点代替被修剪掉叶 子节点的父节点的位置。这样就能得到精简后的关系二叉树,在后续算费时,能减少二叉树 的遍历以及匹配时间,提高计费效率。 话单的定义:就是用户在拨打实际电话完成后产生的文件记录(文件记录包括比 如:用户拨打的地点、拨打对端号码、通话时长等信息),话单会按照用户的在拨打的地点 以及拨打的对方号码,有一个简单的分类,比如拨打长途、漫游拨打、本地拨打、本地拨打亲 情号等° 对用户拨打的电话产生的话单进行计费,就是使用套餐业务关系二叉树进行遍历访 问计费的过程,默认访问顺序是前序遍历,对上述场景的计费和二叉树访问举例说明如下: 如果话单为拨打长途,假设遍历访问到XI,判断话单是否满足XI的条件,即XI子 树满足条件,执行优惠,二叉树的遍历访问结束。 如果话单为漫游拨打,话单不满足XI节点条件,则继续访问,按照访问的顺序要 访问到X2, X2满足话单条件,执行优惠,则停止二叉树的遍历。 如果话单为本地拨打,XI和X2都不满足,则需要继续访问,发现X3和X4的关系 是可叠加,则需要判断X3是否满足和X4是否满足条件,如果都满足,则比较执行优惠,取优 惠量最大的子业务,二叉树访问结束。 如果话单为其他类型的话单,则整个二叉树的子业务节点都不满足条件,则整颗 树访问结束后,不会执行任何动作。 对于一个话单的不同场景而言,比如长途拨打,有效的子业务的个数是有限的,在 实际处理过程中我们对针对不同的场景把原先的二叉树进行修剪,保留有用的满足本场景 的子业务节点,这样减少递归的次数和逻辑判断,提高计费效率。 对业务关系二叉树进行修剪,一般的修剪规则为:对叶子节点进行修剪,若叶子节 点不满足某种修剪场景的条件,则被修剪掉,另外相邻的一个左或右节点代替被修剪掉叶 子节点的父节点的位置。这样就能得到精简后的关系二叉树,在后续算费时,能减少二叉树 的遍历以及匹配时间,提高计费效率。
技术实现思路
本专利技术所要解决的技术问题是提供一种节约存储空间、同时减少时间损耗的业务 关系二叉树节点修剪方法及装置。 本专利技术解决上述技术问题的技术方案如下:一种业务关系二叉树节点修剪方法, 包括以下步骤: 步骤1 :将待修剪的二叉树使用字符串表达式进行描述; 步骤2 :根据字符串表达式构造特殊二叉树,特殊二叉树中每个节点用于存储本 身的位置属性信息及与节点对应的父节点的位置属性信息; 步骤3 :根据待修剪的业务场景的数量,为每个业务场景复制一个字符串表达式; 步骤4 :分别根据每个节点在特殊二叉树中存储的本身的位置属性信息及与节点对 应的父节点的位置属性信息,修剪每个业务场景的字符串表达式,将修剪完的所有业务场景 的字符串表达式进行比较,当所有字符串表达式中有若干个相同的字符串表达式时,只保留 所有相同的字符串表达式中的一个字符串表达式,得到若干个不同的字符串表达式; 步骤5 :根据所有不同的字符串表达式构造二叉树,并将构造得到的二叉树与相 应的业务场景匹配。 本专利技术的有益效果是:本专利技术因为修剪后的业务关系二叉树节点个数减少,所以 达到了构造二叉树的时间耗时减少,节约存储空间,减少了时间损耗。 在上述技术方案的基础上,本专利技术还可以做如下改进。 进一步,所述特殊二叉树中的每个节点用于存储本身的开始位置信息和结束位置 信息,存储与每个节点对应的父节点的链接信息。 进一步,如果节点为非叶子节点,存储该节点左括号、右括号和逗号的位置。 进一步,所述步骤4中修剪每个业务场景的字符串表达式具体包括以下步骤:遍 历特殊二叉树节点,如果某叶子节点不满足业务要求,则将字符串表达式中其父节点以及 当前叶子节点的相关位置信息置为空格,该叶子节点的相邻节点替代了其父节点的位置, 同时该叶子节点被修剪掉。 进一步,所述步骤5还包括,当字符串表达式为,具有若干个相同字符串表达式的 业务场景中保留的那个字符串表达式时,根据该字符串表达式构造的二叉树,并将构造的 二叉树为每个具有若干个相同字符串表达式的业务场景复制一次,使每个构造的二本文档来自技高网
...
一种业务关系二叉树节点修剪方法及装置

【技术保护点】
一种业务关系二叉树节点修剪方法,其特征在于,包括以下步骤:步骤1:将待修剪的二叉树使用字符串表达式进行描述;步骤2:根据字符串表达式构造特殊二叉树,特殊二叉树中每个节点用于存储本身的位置属性信息及与节点对应的父节点的位置属性信息;步骤3:根据待修剪的业务场景的数量,为每个业务场景复制一个字符串表达式;步骤4:分别根据每个节点在特殊二叉树中存储的本身的位置属性信息及与节点对应的父节点的位置属性信息,修剪每个业务场景的字符串表达式,将修剪完的所有业务场景的字符串表达式进行比较,当所有字符串表达式中有若干个相同的字符串表达式时,只保留所有相同的字符串表达式中的一个字符串表达式,得到若干个不同的字符串表达式;步骤5:根据所有不同的字符串表达式构造二叉树,并将构造得到的二叉树与相应的业务场景匹配。

【技术特征摘要】

【专利技术属性】
技术研发人员:易继勇
申请(专利权)人:北京思特奇信息技术股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1