买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种航班时刻数据的合并与冲突处理的方法_飞友科技有限公司_201710757934.3 

申请/专利权人:飞友科技有限公司

申请日:2017-08-29

公开(公告)日:2020-08-21

公开(公告)号:CN107577745B

主分类号:G06F16/215(20190101)

分类号:G06F16/215(20190101)

优先权:

专利状态码:有效-授权

法律状态:2020.08.21#授权;2018.02.06#实质审查的生效;2018.01.12#公开

摘要:本发明公开了一种航班时刻数据的合并与冲突处理的方法,包括以下步骤:获取航班时刻数据,根据航班分组,随后将一个航班内的多个航班时刻数据生成为多个子序列,每个子序列中包含班期、开始日期和结束日期的数据内容;获取一个航班对应的多个子序列中的最小开始日期和最大结束日期,然后生成一个二维数组,第一维度中依次存放从最小开始日期至最大结束日期的全部日期,第二维度的存放“是否有班期”和“周”;将多个子序列一一往二维数组中填充;根据周一至周日的原则,扫描二维数组生成新子序列,将扫描获得的多个新子序列合并即为不冲突的航班时刻数据。本发明能对不同渠道的航班时刻数据进行合并,可解决数据交叉、包含及冲突的问题。

主权项:1.一种航班时刻数据的合并与冲突处理的方法,其特征是,包括以下步骤:S1:根据航段获取包含多个航班、多个渠道的航班时刻数据,根据航班对获取的航班时刻数据进行分组,随后将一个航班内的多个航班时刻数据生成为多个子序列,每个子序列中包含班期、开始日期和结束日期的数据内容;S2:获取一个航班对应的多个子序列中的最小开始日期和最大结束日期,计算最小开始日期和最大结束日期的差值X;然后生成一个二维数组,其中第一维度的长度即为差值X,且第一维度中依次存放从最小开始日期至最大结束日期的全部日期,且第一维度作为索引;第二维度的长度为2且分别存放“是否有班期”和“周”,所述“周”是指星期几;S3:将S1生成的多个子序列,按实际有的班期数据,一个子序列一个子序列地往S2生成的二维数组中填充,直至一个航班对应的多个子序列全部填充完成;S4:根据周一至周日的原则,扫描S3中填充完成的二维数组,等量的递归匹配下一个7天的数据,当发现不同的班期后,根据已扫描数据生成一个新子序列,新子序列包含开始索引、结束索引和班期的数据内容;随后按照上述原则继续扫描二维数组中的后续数据,当发现不同的班期后,再生成另一个新子序列;重复上述过程直至二维数组全部扫描结束;将扫描获得的多个新子序列合并即为不冲突的航班时刻数据。

全文数据:一种航班时刻数据的合并与冲突处理的方法技术领域[0001]本发明涉及一种航班时刻数据的合并与冲突处理的方法,属于民航数据处理方法技术领域。背景技术[0002]航班时刻数据是航班执行的计划表,航班时刻数据往往来自于多个渠道,不同渠道的航班时刻数据彼此之间会有一些数据交叉、包含及冲突的问题,因此直接获取的多渠道的航班时刻数据无法直接使用,因此有必要设计一种航班时刻数据的合并方法,能够对不同渠道的航班时刻数据进行合并,并且可以用于解决数据交叉、包含及冲突的问题。发明内容[0003]本发明正是针对现有技术存在的不足,提供一种航班时刻数据的合并与冲突处理的方法,能够对不同渠道的航班时刻数据进行合并,并且可以解决数据交叉、包含及冲突的问题。[0004]为解决上述问题,本发明所采取的技术方案如下:一种航班时刻数据的合并与冲突处理的方法,包括以下步骤:SI:根据航段获取包含多个航班、多个渠道的航班时刻数据,根据航班对获取的航班时刻数据进行分组,随后将一个航班内的多个航班时刻数据生成为多个子序列,每个子序列中包含班期、开始日期和结束日期的数据内容;S2:获取一个航班对应的多个子序列中的最小开始日期和最大结束日期,计算最小开始日期和最大结束日期的差值X;然后生成一个二维数组,其中第一维度的长度即为差值X,且第一维度中依次存放从最小开始日期至最大结束日期的全部日期,且第一维度作为索弓丨;第二维度的长度为2且分别存放“是否有班期”和“周”;S3:将Sl生成的多个子序列,按实际有的班期数据,一个子序列一个子序列地往S2生成的二维数组中填充,直至一个航班对应的多个子序列全部填充完成;S4:根据周一至周日的原则,扫描S3中填充完成的二维数组,等量的递归匹配下一个7天的数据,当发现不同的班期后,根据已扫描数据生成一个新子序列,新子序列包含开始索弓丨、结束索引和班期的数据内容;随后按照上述原则继续扫描二维数组中的后续数据,当发现不同的班期后,再生成另一个新子序列;重复上述过程直至二维数组全部扫描结束;将扫描获得的多个新子序列合并即为不冲突的航班时刻数据。[0005]作为上述技术方案的改进,Sl中,将一个航班内的多个航班时刻数据生成为多个子序列后,根据每个子序列的开始日期和结束日期进行时间段关系判断,将多个生成的子序列分为两类:需要合并处理的子序列和不需要合并处理的子序列;S2中,获取需要合并处理的子序列中的最小开始日期和最大结束日期,生成二维数组;S3中,将需要合并处理的子序列一一填充至二维数组中;S4中,将扫描获得的多个新子序列、以及不需要合并处理的子序列一同合并,即获得不冲突的航班时刻数据。[0006]作为上述技术方案的改进,Sl中时间段关系包括相交、相等、包含、相邻和其它;任一子序列的开始日期和结束日期与其它子序列的开始日期和结束日期具有相交、相等、包含或相邻的时间段关系,则该子序列为需要合并处理的子序列;任一子序列的开始日期和结束日期与其它子序列的开始日期和结束日期均为其它的时间段关系,则该子序列为不需要合并处理的子序列。[0007]本发明与现有技术相比较,本发明的实施效果如下:本发明所述的一种航班时刻数据的合并与冲突处理的方法,能够对不同渠道的航班时刻数据进行合并,生成新的不冲突的航班时刻数据,并且可以解决数据交叉、包含及冲突的问题,解决了不同有效期、不同班期的航班时刻的问题。具体实施方式[0008]下面将结合具体的实施例来说明本发明的内容。[0009]本实施例所提供的一种航班时刻数据的合并与冲突处理的方法,以来自于CZ6412航班的模拟时刻数据为例,包括以下步骤:一、数据分组根据航班唯一性进行分组,原始的航班时刻数据如下表1所示。[0010]表1:CZ6412航班模拟时刻数据如上述表1所示,表1中序号1和序号2的数据之间存在班期不同、数据交叉的问题,这样的数据没法直接使用,因此需要进行数据正确、有效的合并,以生成新的不冲突的航班时刻数据。[0011]二、数据时间关系检测先按照开始日期进行升序排序,再以航班时刻开始日期、结束日期,计算时间段关系相等、相交、包含、相邻),以每个时间段最小时间为开始日期,最大时间为结束日期,获取该时间范围内航班时刻数据;每个有时间关联的集合称为一个RANGE。[0012]上述表1中序号1和序号2的数据中的时间关系是相交,计算出最小的开始时间为2017-07-04,最大的结束时间为2017-07-16,加上序号1和序号2的数据,构造出一个RANGE,我们称为RANGE1,另外序号3的时刻数据不存在冲突问题,所以不需要处理。[0013]三、数据合并根据RANGE的最小开始日期和最大结束日期,计算有效天数,生成为二维数组,第一维长度为η,第二维长度为4;第二维度存放:是否有班期、周。[0014]以RANGEl为例,开始时间与截止时间相隔天数为12天,则定义长度为13的二维数组,具体如下表2所示。[0015]表2=RANGEl初始化构建的数组将表1中序号1的航班时刻数据填充至表2中,得到下表3所示数据表格。[0016]表3=RANGEl,序号1数据填充后将表1中序号2的航班时刻数据填充至表3中,得到下表4所示数据表格。[0017]表4:RANGE1,序号1和序号2数据填充后四、数据分裂、产生新的航班时刻根据周一至周日的原则,等量地递归匹配下一个7天的数据,当发现不同的班期后,数据即弹出返回开始索引、结束索引、班期生产新的航班时刻,随后继续扫描直至结束;获得如下表5和表6所不数据表格。[0018]表5:分裂出来的第一段数据表6:分裂出来的第二段数据根据分裂后的数组信息,构造出两条新的航班时刻数据,加上不需要合并的数据,最终的航班时刻如下表7所示。[0019]表7:已合并后有序的航班时刻数据以上内容是结合具体的实施例对本发明所作的详细说明,不能认定本发明具体实施仅限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明保护的范围。

权利要求:1.一种航班时刻数据的合并与冲突处理的方法,其特征是,包括以下步骤:Si:根据航段获取包含多个航班、多个渠道的航班时刻数据,根据航班对获取的航班时刻数据进行分组,随后将一个航班内的多个航班时刻数据生成为多个子序列,每个子序列中包含班期、开始日期和结束日期的数据内容;S2:获取一个航班对应的多个子序列中的最小开始日期和最大结束日期,计算最小开始日期和最大结束日期的差值X;然后生成一个二维数组,其中第一维度的长度即为差值X,且第一维度中依次存放从最小开始日期至最大结束日期的全部日期,且第一维度作为索弓丨;第二维度的长度为2且分别存放“是否有班期”和“周”;S3:将Sl生成的多个子序列,按实际有的班期数据,一个子序列一个子序列地往S2生成的二维数组中填充,直至一个航班对应的多个子序列全部填充完成;S4:根据周一至周日的原则,扫描S3中填充完成的二维数组,等量的递归匹配下一个7天的数据,当发现不同的班期后,根据已扫描数据生成一个新子序列,新子序列包含开始索弓丨、结束索引和班期的数据内容;随后按照上述原则继续扫描二维数组中的后续数据,当发现不同的班期后,再生成另一个新子序列;重复上述过程直至二维数组全部扫描结束;将扫描获得的多个新子序列合并即为不冲突的航班时刻数据。2.权利要求1所述的一种航班时刻数据的合并与冲突处理的方法,其特征是,Sl中,将一个航班内的多个航班时刻数据生成为多个子序列后,根据每个子序列的开始日期和结束日期进行时间段关系判断,将多个生成的子序列分为两类:需要合并处理的子序列和不需要合并处理的子序列;S2中,获取需要合并处理的子序列中的最小开始日期和最大结束日期,生成二维数组;S3中,将需要合并处理的子序列一一填充至二维数组中;S4中,将扫描获得的多个新子序列、以及不需要合并处理的子序列一同合并,即获得不冲突的航班时刻数据。3.权利要求2所述的一种航班时刻数据的合并与冲突处理的方法,其特征是,Sl中时间段关系包括相交、相等、包含、相邻和其它;任一子序列的开始日期和结束日期与其它子序列的开始日期和结束日期具有相交、相等、包含或相邻的时间段关系,则该子序列为需要合并处理的子序列;任一子序列的开始日期和结束日期与其它子序列的开始日期和结束日期均为其它的时间段关系,则该子序列为不需要合并处理的子序列。

百度查询: 飞友科技有限公司 一种航班时刻数据的合并与冲突处理的方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。