利索能及
我要发布
收藏
专利号: 2021110686277
申请人: 上海商汤科技开发有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种对比方法,其特征在于,包括:

对一个或多个文件中的多个原始待对比对象做扁平化处理,得到多个待对比对象,对象扁平化是指将一颗有若干层级的树结构拉平为只有根节点和一层子节点;

使用公共对象确定多个待对比对象对应的目标键;所述多个待对比对象与所述多个原始待对比对象一一对应,所述多个待对比对象中至少两个待对比对象包含的所述目标键的值不同,或者,所述多个待对比对象中至少一个待对比对象不包含所述目标键;所述多个待对比对象中的每个待对比对象包含一个或多个键,每个键对应一个或多个值;

输出所述多个待对比对象的对比结果,所述对比结果包含所述多个待对比对象中每个待对比对象包含的所述目标键的值;

在输出所述多个待对比对象的对比结果之前,所述方法还包括:

在所述公共对象中的所述目标键对应的记数值不等于所述多个待对比对象的个数的情况下,将所述目标键写入中间结果数组;

获取所述中间结果数组中的每个键在所述多个待对比对象中的值,得到所述对比结果;

所述使用公共对象确定多个待对比对象对应的目标键包括:

先后基于所述多个待对比对象中每个待对比对象包含的各键和各键的值,更新所述公共对象中的键和/或所述公共对象中的键对应的记数值;所述公共对象中的每个键对应一个记数值;

基于所述公共对象中的各键对应的记数值,确定所述目标键;所述公共对象中的所述目标键对应的记数值不等于所述待对比对象的个数;

所述先后使用所述多个待对比对象中每个待对比对象包含的各键和各键的值,更新所述公共对象中的键和/或所述公共对象中的键对应的记数值包括:在所述多个待对比对象中的第一待对比对象包含的第一键的值与所述公共对象中的所述第一键的值相同的情况下,将所述公共对象中的所述第一键对应的记数值加一;

在所述多个待对比对象中的所述第一待对比对象包含的所述第一键的值与所述公共对象中的所述第一键的值不同的情况下,将所述公共对象中的所述第一键对应的记数值更新为一。

2.根据权利要求1所述的方法,其特征在于,所述第一待对比对象包含的所述第一键的值与所述公共对象中的所述第一键的值不同,所述方法还包括:将所述公共对象中的所述第一键的值更新为所述第一待对比对象包含的所述第一键的值。

3.根据权利要求1或2所述的方法,其特征在于,在将所述公共对象中的所述第一键对应的记数值加一之前,所述方法还包括:在所述公共对象中未包含所述多个待对比对象中的第二待对比对象包含的所述第一键的情况下,在所述公共对象中创建所述第一键,并将所述公共对象中的所述第一键的值设置为所述第二待对比对象包含的所述第一键的值以及将所述公共对象中的所述第一键对应的记数值设置为一。

4.根据权利要求1或2所述的方法,其特征在于,所述多个原始待对比对象中的至少一个的树结构有两层或两层以上子节点,所述多个待对比对象中的任意一个的树结构只有根节点和一层子节点。

5.根据权利要求1或2所述的方法,其特征在于,所述先后基于所述多个待对比对象中每个待对比对象包含的各键和各键的值,更新所述公共对象中的键和/或所述公共对象中的键对应的记数值包括:在基于所述多个待对比对象中的第三待对比对象包含的各键和各键的值,更新所述公共对象中的键和/或所述公共对象中的键对应的记数值的过程中,对第四原始待对比对象做扁平化处理以得到第四待对比对象;所述第四待对比对象包含于所述多个待对比对象,所述第三待对比对象由第三原始待对比对象扁平化得到,所述第三原始待对比对象和所述第四原始待对比对象包含于同一文件或不同文件。

6.一种数据处理装置,其特征在于,包括:

处理单元,用于对一个或多个文件中的多个原始待对比对象做扁平化处理,得到多个待对比对象,对象扁平化是指将一颗有若干层级的树结构拉平为只有根节点和一层子节点;使用公共对象确定所述多个待对比对象对应的目标键;所述多个待对比对象中至少两个待对比对象包含的所述目标键的值不同,或者,所述多个待对比对象中至少一个待对比对象不包含所述目标键;所述多个待对比对象中的每个待对比对象包含一个或多个键,每个键对应一个或多个值;

所述处理单元,还用于在所述公共对象中的所述目标键对应的记数值不等于所述多个待对比对象的个数的情况下,将所述目标键写入中间结果数组;获取所述中间结果数组中的每个键在所述多个待对比对象中的值,得到对比结果;

输出单元,用于输出所述多个待对比对象的对比结果,所述对比结果包含所述多个待对比对象中每个待对比对象包含的所述目标键的值;

所述处理单元,具体用于先后基于所述多个待对比对象中每个待对比对象包含的各键和各键的值,更新所述公共对象中的键和/或所述公共对象中的键对应的记数值;所述公共对象中的每个键对应一个记数值;基于所述公共对象中的各键对应的记数值,确定所述目标键;所述公共对象中的所述目标键对应的记数值不等于所述待对比对象的个数;

所述处理单元,具体用于在所述多个待对比对象中的第一待对比对象包含的第一键的值与所述公共对象中的所述第一键的值相同的情况下,将所述公共对象中的所述第一键对应的记数值加一;在所述多个待对比对象中的所述第一待对比对象包含的所述第一键的值与所述公共对象中的所述第一键的值不同的情况下,将所述公共对象中的所述第一键对应的记数值更新为一。

7.一种电子设备,其特征在于,包括处理器,所述处理器通过读取存储器中存储的代码,以执行如权利要求1至5任一项所述的方法。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,使所述处理器执行权利要求1至5任意一项所述的方法。