[发明专利]一种语义驱动的中位数选择算法在审
申请号: | 201711329427.6 | 申请日: | 2017-12-13 |
公开(公告)号: | CN108009133A | 公开(公告)日: | 2018-05-08 |
发明(设计)人: | 段玉聪;邵礼旭;宋正阳 | 申请(专利权)人: | 海南大学 |
主分类号: | G06F17/18 | 分类号: | G06F17/18 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 570228 海*** | 国省代码: | 海南;46 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 语义 驱动 中位数 选择 算法 | ||
1.一种语义驱动的中位数选择算法,对于包含N个数字的数组ARR,输入被分割为一系列三元组,其中每个三元组包含3个数字(目前,本发明只考虑N可以整除3的情况来简化选择算法),其特征是按如下步骤进行:
步骤(1)用以三元组形式输入的数值构建数组(3
步骤(2)从NARR中以NARR(3,3,3,3)的形式取4个三元组
通过三组比较对每个三元组进行排序,以匹配三元组中的3个数字:
(number1 <number2 <number3)或(S,M,L)的缩写,S表示较小的数,M表示中位数,L表示较大的数
对NARR(3,3,3,3)的每个三元组进行排序的总计算量为4 * 3 = 12,将包含4个有序三元组的NARR划分为2个NARR(3,3),分别表示为:
(NARR(3
步骤(3)从NARR(3
(sa,ma,la)和(sb,mb,lb);
步骤(4)按照语义分析的规则,本发明只将中位数作为每个三元组和二元组的代表进行比较
对于每一对(sa,ma,la)和(sb,mb,lb)形式的两个有序三元组,有ma和mb的一个比较
由于每个元组包含3个有序数字,所以这个比较将从当前数字集合的可能中位数的候选列表中分别从每个三元组对称地排除1个大的或小的数,后缀ex表示排除某一个数,表示如下:
compare(ma,mb)AND {(sa,ma,la),(sb,mb,lb)}
=> {
(ma> mb)AND {(sa,ma,la-ex),(sb-ex,mb,lb)},
(ma <mb)AND {(sa-ex,ma,la-ex),(sb,mb,lb-ex)}
}
在ma> mb的情况下,排除的数字是{sb,la}
目前中位数选择的左边候选数值是(sa,ma)和(mb,lb);
步骤(5)从每个三元组中排除1个数字后,每个三元组变成二元组
对于二元组,这两个数字构成二元组的中位数,用(ML,MR)分别表示左边的中位数和右边的中位数,这两个数字类似于刀片(Blade)的两边;
步骤(6)将二元组左右两个中位数与另一个二元组的相应中位数进行比较
例如对于ma> mb的情况,左边的候选者是(sa,ma)和(mb,lb)
因此, 在这个阶段会有两个比较,包括
{左侧比较(sa vs mb),右侧比较(ma vs lb)};
步骤(7)在三次比较之后,我们将得到整个NARR(3,3)的两个中位数,结果如下所示:
({sa,sb},mb-ML,ma-MR,{la,lb})
其中()用于有序号码,{}用于无序号码;
步骤(8)获取两个NARR(3
({sa, sb}, mb-ML, ma-MR,{la, lb}) =>({x1, x2}, x3-ML, x4-MR,{x5, x6})
NARR(3
NARR(3,3)
NARR(3,3)
步骤(9)在2个NARR(3,3)之间的左右中间值之间分别进行比较:
a3-ML vs. b3-ML AND a4-MR vs. b4-MR
为了说明目的,将(NARR(3,3)
(({a1,a2},a3-ML)→aBladeL,(a4-MR,{a5,a6})→aBladeR),
(({b1,b2},b3-ML)→bBladeL,(b4-MR,{b5,b6})→bBladeR)
或
(aBladeL,aBladeR),
(bBladeL,bBladeR),
其中aBladeL表示三元组a的左侧,aBladeR表示三元组a的右侧,bBladeL和bBladeR同理,(6,7)的位置是12个数组的3个中位数的顺序
对于a3-ML vs. b3-ML 和 a4-MR vs. b4-MR之间的比较将排除4个部分所在的所有数字
{(aBladeL,aBladeR),(bBladeL,bBladeR)}
因此经过2个中位数比较后,可以获得(NARR(3,3)
步骤(10)NARR(3,3,3,3)中的4个三元组将被缩减为由{(aBladeL,aBladeR),(bBladeL,bBladeR)}左边的1个区域和右边的1个区域组成的两个区域:
{(aBladeL,aBladeR)
OR(bBladeL,bBladeR)
OR {(aBladeL,bBladeR)
OR(bBladeL,aBladeR)},
每个区域的形式如下:
({x1,x2},x3)和(x4,{x5,x6}),
在表示为两个排好序的三元组NARR(3o)之前比较在2个{}之内的数字。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海南大学,未经海南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711329427.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种MIFI系统的检测装置、系统及方法
- 下一篇:一种新型一体式高端打磨设备