CN111125165A - 集合的合并方法、装置、处理器及机器可读存储介质 - Google Patents

集合的合并方法、装置、处理器及机器可读存储介质 Download PDF

Info

Publication number
CN111125165A
CN111125165A CN201811288183.6A CN201811288183A CN111125165A CN 111125165 A CN111125165 A CN 111125165A CN 201811288183 A CN201811288183 A CN 201811288183A CN 111125165 A CN111125165 A CN 111125165A
Authority
CN
China
Prior art keywords
sets
original
merging
stop condition
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811288183.6A
Other languages
English (en)
Inventor
王际彭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201811288183.6A priority Critical patent/CN111125165A/zh
Publication of CN111125165A publication Critical patent/CN111125165A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供一种集合的合并方法、装置、处理器及机器可读存储介质,属于计算机领域。该方法包括:步骤1,对多个原始集合中的每个原始集合生成对应的标识码;步骤2,针对每个原始集合,将至少一个数据中的每个数据分别与标识码结合,生成多个第一集合;步骤3,将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及步骤4,判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。本发明可以快速和准确地进行集合的合并。

Description

集合的合并方法、装置、处理器及机器可读存储介质
技术领域
本发明涉及计算机,具体地涉及集合的合并方法、装置、处理器及机器可读存储介质。
背景技术
现在的社会是一个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据就是这个高科技时代的产物。对于集合形式的大数据的处理,合并具有交集的集合是重要的一环。但是大数据数量巨大,集合合并非常繁琐,现有的集合合并方式已不能满足当前时代的要求。
发明内容
本发明实施例的目的是提供一种集合的合并方法、装置、处理器及机器可读存储介质,该集合的合并方法、装置、处理器及机器可读存储介质可以快速和准确地进行集合的合并。
为了实现上述目的,本发明实施例提供一种集合的合并方法,该方法包括:将多个初始集合作为多个原始集合,所述多个初始集合中的每个初始集合包括至少一个数据,并执行以下步骤:步骤1,对多个原始集合中的每个原始集合生成对应的标识码;步骤2,针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;步骤3,将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及步骤4,判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
优选地,该方法还包括:针对同一次执行所述步骤1至所述步骤4,将第二集合中不具有的标识码对应的原始集合标记为不需要合并的原始集合。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为1时,该方法还包括:将第二集合中的标识码对应的初始集合标记为需要合并的初始集合,并合并需要合并的初始集合中的数据。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量不符合预设停止条件,并重新执行所述步骤1至所述步骤3得到符合预设停止条件的第二集合后,该方法还包括:在符合预设停止条件的第二集合的数量为1时,针对每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合以及符合预设停止条件时的第二集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并所述需要合并的初始集合;在符合预设停止条件的第二集合的数量为0时,针对上一次执行的步骤3得到的每个第二集合以及每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并需要合并的初始集合。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为0时,该方法还包括:针对同一次执行所述步骤1至所述步骤4,将所有原始集合标记为不需要合并的原始集合。
优选地,在第二集合的数量大于1时,该方法还包括:以向下取整的方式计算多个第二集合中标识码的数量的平均值;根据所述平均值,完成等于所述平均值的次数的聚合,每次聚合包括:对所述多个第二集合中的每个第二集合取排序等于当前聚合次数的标识码,作为该第二集合的聚合码;将所述聚合码相同的第二集合中的标识码进行合并,以得到聚合后的至少一个第二集合;则所述判断第二集合的数量是否符合预设停止条件包括:判断聚合后的至少一个第二集合的数量是否符合预设停止条件。
本发明实施例还提供一种集合的合并装置,该装置包括:标识单元、处理单元以及合并单元,其中,所述标识单元用于将多个初始集合作为多个原始集合,所述每个初始集合包括至少一个数据;对多个原始集合中的每个原始集合生成对应的标识码;所述处理单元用于:针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
优选地,所述处理单元还用于:将第二集合中不具有的标识码对应的原始集合标记为不需要合并的集合。
本发明实施例还提供一种处理器,用于运行程序,其中,所述程序被运行时用于执行:上文所述的集合的合并方法。
本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行:上文所述的集合的合并方法。
通过上述技术方案,采用本发明提供的集合的合并方法、装置、处理器及机器可读存储介质,通过对初始集合作为的原始集合生成标识码,再进行数据与标识码的合并得到第一集合,以及对第一集合中数据相同的集合的标识码提取得到第二集合,以判断第二集合的数量从而合并初始集合。本发明采用该合并方法可以快速和准确地进行集合的合并。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是本发明一实施例提供的集合的合并方法的流程图;
图2是本发明一实施例提供的第二集合的数量大于1的合并方法的流程图;
图3是本发明一实施例提供的第二集合优化方法的流程图;
图4为本发明一实施例提供的集合的合并装置的结构示意图。
附图标记说明
1 标识单元 2 处理单元。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
图1是本发明一实施例提供的集合的合并方法的流程图。如图1所示,该方法包括:首先将多个初始集合作为多个原始集合,所述每个初始集合包括至少一个数据,并执行以下步骤:
步骤1,对多个原始集合中的每个原始集合生成对应的标识码;
步骤2,针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;
步骤3,将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及
步骤4,判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
在本实施例提供一种将集合进行合并的方法,首先,要说明的是,初始集合中包括至少一个数据。而集合的数量也应为多个,才有可能进行集合的合并。
以下进行上述步骤的详细说明:
假设现有初始集合如下:{a,b,c}、{b,d}、{e,f}、{g,h,i}、{j,k}、{l,e}、{m,g}、{n,l,m}和{o,p},a、b、c、d、e、f、g、h、i、j、k、l、m和n为这些初始集合中的数据。
然后,将这些初始集合作为原始集合,对这些原始集合中的每个原始集合生成对应的标识码如下:
原始集合{a,b,c}的标识码为s1;原始集合{b,d}的标识码为s2;原始集合{e,f}的标识码为s3;原始集合{g,h,i}的标识码为s4;原始集合{j,k}的标识码为s5;原始集合{l,e}的标识码为s6;原始集合{m,g}的标识码为s7;原始集合{n,l,m}的标识码为s8;原始集合{o,p}的标识码为s9。
接着,针对每个原始集合,将多个数据中的每个数据与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合,例如对于标识码为s1的原始集合{a,b,c},生成的第一集合为:(a,s1)、(b,s1)和(c,s1)。这样,将所有原始集合都进行上述处理之后,生成的所有第一集合为:(a,s1)、(b,s1)、(c,s1)、(b,s2)、(d,s2)、(e,s3)、(f,s3)、(g,s4)、(h,s4)、(i,s4)、(j,s5)、(k,s5)、(l,s6)、(e,s6)、(m,s7)、(g,s7)、(n,s8)、(l,s8)、(m,s8)、(o,s9)和(p,s9),每个第一集合都含有数据和标识码。
接着,将所述多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合,例如第一集合(b,s1)和(b,s2)都具有数据“b”,那么,将标识码s1和s2提取出来,作为第二集合(s1,s2)。对于某一数据只有一个第一集合中具有,例如第一集合(k,s5)的数据“k”,则该第一集合(k,s5)不做处理。于是,对于多个第一集合中所有包含相同数据的集合组都进行上述操作之后,所有第二集合为:(s1,s2)、(s3,s6)、(s4,s7)、(s6,s8)和(s7,s8)。
另外,本发明实施例还提供一种更为详细的第二集合获得方法:
首先,将多个第一集合中具有相同数据的集合进行聚合,生成包含数据和至少一个标识码的至少一个中间集合,例如,第一集合(b,s1)和(b,s2)具有相同数据“b”,因此,将二者聚合,得到中间集合(b,s1s2),该中间集合中包含一个数据b和两个标识符s1和s2。对于某一数据只有一个第一集合中具有,例如第一集合(k,s5)的数据“k”,则该第一集合(k,s5)不做处理直接成为中间集合。因此,得到所有中间集合为:(a,s1)、(b,s1s2)、(c,s1)、(d,s2)、(e,s3s6)、(f,s3)、(g,s4s7)、(h,s4)、(i,s4)、(j,s5)、(k,s5)、(l,s6s8)、(m,s7s8)、(n,s8)、(o,s9)和(p,s9)。
接着,针对所述至少一个中间集合中标识码的数量大于1的每一中间集合,将该中间集合内的所述标识码提取出来以作为第二集合,例如中间集合(b,s1s2),标识码包括s1和s2,提取出形成第二集合(s1,s2)。对于所有含有数量大于1的标识码的中间集合进行上述操作,得到所有第二集合为:(s1,s2)、(s3,s6)、(s4,s7)、(s6,s8)和(s7,s8)。
最后,判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
在本发明实施例中,预设停止条件为小于等于1,即为0或1。也就是说,第二集合的数量为0或1时,符合预设停止条件,如果大于1则不符合预设停止条件三种情况,下面详细进行说明:
1)在第二集合的数量为1时
说明在所有初始集合中,只有一个数据属于多个初始集合,因此将第二集合中的标识码对应的初始集合标记为需要合并的初始集合,并合并需要合并的初始集合中的数据。
例如,初始集合为{a,b}、{a,d}和{e,f},标识码分别为s1、s2和s3,第一集合为(a,s1)、(b,s1)、(a,s2)、(d,s2)、(e,s3)、(f,s3),第二集合为(s1,s2),因此,将初始集合{a,b}和{a,d}合并为{a,b,d}。
2)在第二集合的数量大于1时
合并方法如图2所示。图2是本发明一实施例提供的第二集合的数量大于1的合并方法的流程图。该方法包括:
步骤S21,将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3;
步骤S22,判断所述新第二集合的数量是否小于等于1;
步骤S23,在符合预设停止条件的第二集合的数量为1时,针对每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合以及符合预设停止条件时的第二集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并所述需要合并的初始集合;
步骤S24,在符合预设停止条件的第二集合的数量为0时,针对上一次执行的步骤3得到的每个第二集合以及每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并需要合并的初始集合。
例如,首先,当前步骤3得到的结果为所有第二集合,即(s1,s2)、(s3,s6)、(s4,s7)、(s6,s8)和(s7,s8),那么将这些集合作为新的原始集合,重复步骤1-3,即生成新的标识码分别为t1、t2、t3、t4和t5,得到第一集合(s1,t1)、(s2,t1)、(s3,t2)、(s6,t2)、(s4,t3)、(s7,t3)、(s6,t4)、(s8,t4)、(s7,t5)和(s8,t5),再接着得到第二集合(t2,t4)、(t3,t5)和(t4,t5),发现本次步骤3得到的结果,数量仍然大于1,因此将该第二集合作为新的原始集合,再执行步骤1-3后得到结果(h1,h3)和(h2,h3),数量仍大于1,再执行步骤1-3后得到结果(j1,j2),数量等于1,停止。
随后,第一次重新执行步骤3得到的第二集合为(t2,t4)、(t3,t5)和(t4,t5),缺少新的标识码t1,而t1对应集合(s1,s2),因此对s1对应的需要合并的初始集合{a,b,c}以及s2对应的需要合并的初始集合{b,d}标记为第一标记;第二次重新执行步骤3得到的第二集合为(h1,h3)和(h2,h3),没有缺少的标识码;第三次重新执行步骤3得到的第二集合为(j1,j2),没有缺少的标识码。符合预设停止条件(数量为1)时的第二集合为(j1,j2),反推回去转换为原始集合的标识码相当于(s3,s4,s6,s7,s8),因此对s3对应的需要合并的初始集合{e,f}、s4对应的需要合并的初始集合{g,h,i}、s6对应的需要合并的初始集合{l,e}、s7对应的需要合并的初始集合{m,g}和s8对应的需要合并的初始集合{n,l,m}标记为第二标记,然后,依据所述不同标记合并需要合并的初始集合,即得到{a,b,c,d}和{e,f,g,h,i,l,m,n}。
如果当前步骤3得到的第二集合例如为(s1,s2)、(s3,s4)、(s4,s6)和(s2,s8),那么,将这些集合作为新的原始集合,重复步骤1-3,即生成新的标识码分别为t1、t2、t3、t4和t5,得到第一集合(s1,t1)、(s2,t1)、(s3,t2)、(s4,t2)、(s4,t3)、(s6,t3)、(s2,t4)和(s8,t4),再接着得到第二集合(t1,t4)和(t2,t3),发现第二集合仍大于1,再重复步骤1-3,生成新的标识码h1和h2,得到第一集合(t1,h1)、(t4,h1)、(t2,h2)以及(t3,h2),发现无法再得到第二集合,即第二集合为0,于是将上一次执行的步骤3得到的每个第二集合(t1,t4)和(t2,t3)分别对应的初始集合标记为第一标记和第二标记,再接着,将第一次重新执行步骤3得到的第二集合(t1,t4)和(t2,t3)中不具有的新的标识码t5(对应集合(s2,s8))对应的初始集合标记为第三标记,然后依据不同标记进行初始集合的合并。
3)在第二集合的数量为0时
说明对于本次执行步骤1至步骤4,所有原始集合中并没有任何多个原始集合具有相同的数据,因此针对本次执行步骤1至步骤4,将所有原始集合标记为不需要合并的原始集合。
例如,原始集合为{a,b}和{c,d},标识码分别为s1和s2,第一集合为(a,s1)、(b,s1)、(c,s2)以及(d,s2),其中,没有集合组包含相同的数据,因此第二集合的数量为0。因此,原始集合{a,b}和{c,d}为本次执行步骤1至步骤4不需要合并的原始集合。
另外,在每次执行步骤1至步骤4中得到第二集合之后,针对本次执行步骤1至步骤4,本发明实施例还可以将第二集合中不具有的标识码对应的原始集合标记为不需要合并的原始集合。例如,所有第二集合为:(s1,s2)、(s3,s6)、(s4,s7)、(s6,s8)和(s7,s8)。那么不具有的标识码就是s5和s9,那么这两个标识码对应的原始集合{j,k}和{o,p}为本次执行步骤1至步骤4不需要合并的原始集合。
由于在大数据下,步骤3得到的需要合并集合的交集会非常多,并且多个集合有同一数据作为交集的情况可能普遍存在,所以在步骤3时可以选用与实际数据较为切合的随机聚合方法,进行一次随机聚合,具体如下:
图3是本发明一实施例提供的第二集合优化方法的流程图。如图3所示,
在所述第二集合的数量大于1时,该方法还包括:
步骤S31,以向下取整的方式计算多个第二集合中标识码的数量的平均值;
步骤S32,根据所述平均值,完成等于所述平均值的次数的聚合;
步骤S33,判断聚合后的至少一个第二集合的数量是否符合预设停止条件。
其中,每次聚合包括:对所述多个第二集合中的每个第二集合取排序等于当前聚合次数的标识码,作为该第二集合的聚合码;将所述聚合码相同的第二集合中的标识码进行合并,以得到聚合后的至少一个第二集合。
以第二集合(s1,s2)、(s3,s6)、(s4,s7)、(s6,s8)和(s7,s8)为例,5个第二集合标识码都为2个,因此,多个第二集合中标识码的数量的平均值为2,于是要进行2次聚合。
第一次聚合为:
取所有第二集合中的第一个标识码作为聚合码,即(s1,s2)的聚合码为s1,(s3,s6)的聚合码为s3,(s4,s7)的聚合码为s4,(s6,s8)的聚合码为s6,(s7,s8)的聚合码为s7。没有相同的聚合码,则不需进行合并,进行第二次聚合。
第二次聚合为:
取所有第二集合中的第二个标识码作为聚合码,即(s1,s2)的聚合码为s2,(s3,s6)的聚合码为s6,(s4,s7)的聚合码为s7,(s6,s8)的聚合码为s8,(s7,s8)的聚合码为s8,将聚合码相同的第二集合中的标识码进行合并,在此相同的聚合码为s8,于是,将(s6,s8)和(s7,s8)进行合并,合并后得到的聚合后的第二集合为(s1,s2)、(s3,s6)、(s4,s7)、(s6,s7,s8)。从而判断该聚合后的至少一个第二集合的数量是否符合预设停止条件。
图4为本发明一实施例提供的集合的合并装置的结构示意图。如图4所示,该装置包括:标识单元1和处理单元2,其中,所述标识单元1用于将多个初始集合作为多个原始集合,所述每个初始集合包括至少一个数据;对多个原始集合中的每个原始集合生成对应的标识码;所述处理单元2用于:针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
优选地,所述处理单元2还用于:针对同一次执行所述步骤1至所述步骤4,将第二集合中不具有的标识码对应的原始集合标记为不需要合并的原始集合。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为1时,所述处理单元2还用于:将第二集合中的标识码对应的初始集合标记为需要合并的初始集合,并合并需要合并的初始集合中的数据。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量不符合预设停止条件,并重新执行所述步骤1至所述步骤3得到符合预设停止条件的第二集合后,所述处理单元2还用于:在符合预设停止条件的第二集合的数量为1时,针对每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合以及符合预设停止条件时的第二集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并所述需要合并的初始集合;在符合预设停止条件的第二集合的数量为0时,针对上一次执行的步骤3得到的每个第二集合以及每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并需要合并的初始集合。
优选地,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为0时,所述处理单元2还用于:针对同一次执行所述步骤1至所述步骤4,将所有原始集合标记为不需要合并的原始集合。
优选地,在第二集合的数量大于1时,所述处理单元2还用于:以向下取整的方式计算多个第二集合中标识码的数量的平均值;根据所述平均值,完成等于所述平均值的次数的聚合,每次聚合包括:对所述多个第二集合中的每个第二集合取排序等于当前聚合次数的标识码,作为该第二集合的聚合码;将所述聚合码相同的第二集合中的标识码进行合并,以得到聚合后的至少一个第二集合;则所述判断第二集合的数量是否符合预设停止条件包括:判断聚合后的至少一个第二集合的数量是否符合预设停止条件。
上述装置的实施例与上文所述的方法的实施例类似,在此不再赘述。
本发明实施例还提供一种处理器,用于运行程序,其中,所述程序被运行时用于执行:上文所述的集合的合并方法。
本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行:上文所述的集合的合并方法。
通过上述技术方案,采用本发明提供的集合的合并方法、装置、处理器及机器可读存储介质,通过对初始集合作为的原始集合生成标识码,再进行数据与标识码的合并得到第一集合,以及对第一集合中数据相同的集合的标识码提取得到第二集合,以判断第二集合的数量从而合并初始集合。本发明采用该合并方法可以快速和准确地进行集合的合并。
所述集合的合并装置包括处理器和存储器,上述标识单元1和处理单元2等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来合并集合。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述集合的合并方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述集合的合并方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述集合的合并方法。本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化上述集合的合并方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种集合的合并方法,其特征在于,该方法包括:
将多个初始集合作为多个原始集合,所述多个初始集合中的每个初始集合包括至少一个数据,并执行以下步骤:
步骤1,对多个原始集合中的每个原始集合生成对应的标识码;
步骤2,针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;
步骤3,将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及
步骤4,判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
2.根据权利要求1所述的集合的合并方法,其特征在于,该方法还包括:
针对同一次执行所述步骤1至所述步骤4,将第二集合中不具有的标识码对应的原始集合标记为不需要合并的原始集合。
3.根据权利要求1所述的集合的合并方法,其特征在于,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为1时,该方法还包括:
将第二集合中的标识码对应的初始集合标记为需要合并的初始集合,并合并需要合并的初始集合中的数据。
4.根据权利要求1所述的集合的合并方法,其特征在于,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量不符合预设停止条件,并重新执行所述步骤1至所述步骤3得到符合预设停止条件的第二集合后,该方法还包括:
在符合预设停止条件的第二集合的数量为1时,针对每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合以及符合预设停止条件时的第二集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并所述需要合并的初始集合;
在符合预设停止条件的第二集合的数量为0时,针对上一次执行的步骤3得到的每个第二集合以及每一次重新执行的步骤3得到的第二集合中不具有的新的标识码对应的新的原始集合,分别将对应的初始集合以不同标记标记为需要合并的初始集合,并依据所述不同标记合并需要合并的初始集合。
5.根据权利要求1所述的集合的合并方法,其特征在于,所述预设停止条件为第二集合的数量小于等于1,在第二集合的数量符合预设停止条件并为0时,该方法还包括:
针对同一次执行所述步骤1至所述步骤4,将所有原始集合标记为不需要合并的原始集合。
6.根据权利要求1所述的集合的合并方法,其特征在于,在第二集合的数量大于1时,该方法还包括:
以向下取整的方式计算多个第二集合中标识码的数量的平均值;
根据所述平均值,完成等于所述平均值的次数的聚合,每次聚合包括:
对所述多个第二集合中的每个第二集合取排序等于当前聚合次数的标识码,作为该第二集合的聚合码;
将所述聚合码相同的第二集合中的标识码进行合并,以得到聚合后的至少一个第二集合;
则所述判断第二集合的数量是否符合预设停止条件包括:判断聚合后的至少一个第二集合的数量是否符合预设停止条件。
7.一种集合的合并装置,其特征在于,该装置包括:
标识单元和处理单元,其中,
所述标识单元用于将多个初始集合作为多个原始集合,所述多个初始集合中的每个初始集合包括至少一个数据;对多个原始集合中的每个原始集合生成对应的标识码;
所述处理单元用于:
针对每个原始集合,将该原始集合的至少一个数据中的每个数据分别与该原始集合对应的标识码结合,生成包含数据和标识码的多个第一集合;
将多个第一集合中每组具有相同数据的集合中的标识码提取出来以作为第二集合;以及
判断第二集合的数量是否符合预设停止条件,如果符合则判断需要合并的初始集合,并将需要合并的初始集合中的数据进行合并;若不符合,则将第二集合作为新的原始集合,重新执行所述步骤1至所述步骤3,直至第二集合的数量符合预设停止条件。
8.根据权利要求7所述的集合的合并装置,其特征在于,所述处理单元还用于:
将第二集合中不具有的标识码对应的原始集合标记为不需要合并的集合。
9.一种处理器,其特征在于,用于运行程序,其中,所述程序被运行时用于执行:
如权利要求1-6任意一项所述的集合的合并方法。
10.一种机器可读存储介质,其特征在于,该机器可读存储介质上存储有指令,该指令用于使得机器执行:
如权利要求1-6任意一项所述的集合的合并方法。
CN201811288183.6A 2018-10-31 2018-10-31 集合的合并方法、装置、处理器及机器可读存储介质 Pending CN111125165A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811288183.6A CN111125165A (zh) 2018-10-31 2018-10-31 集合的合并方法、装置、处理器及机器可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811288183.6A CN111125165A (zh) 2018-10-31 2018-10-31 集合的合并方法、装置、处理器及机器可读存储介质

Publications (1)

Publication Number Publication Date
CN111125165A true CN111125165A (zh) 2020-05-08

Family

ID=70485527

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811288183.6A Pending CN111125165A (zh) 2018-10-31 2018-10-31 集合的合并方法、装置、处理器及机器可读存储介质

Country Status (1)

Country Link
CN (1) CN111125165A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274488A (zh) * 2020-02-20 2020-06-12 深圳前海微众银行股份有限公司 推荐方法、装置、设备、系统、待执行终端及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274488A (zh) * 2020-02-20 2020-06-12 深圳前海微众银行股份有限公司 推荐方法、装置、设备、系统、待执行终端及存储介质

Similar Documents

Publication Publication Date Title
CN107957989B9 (zh) 基于集群的词向量处理方法、装置以及设备
CN106897342B (zh) 一种数据校验方法和设备
CN110533018B (zh) 一种图像的分类方法及装置
CN106933823B (zh) 数据同步方法及装置
CN110019298B (zh) 数据处理方法和装置
CN106648839B (zh) 数据处理的方法和装置
CN113641592B (zh) 测试序列的生成方法及装置
CN110765151A (zh) 一种计算公式处理方法及装置
CN111078510B (zh) 一种任务处理进度的记录方法及装置
CN112579623A (zh) 存储数据的方法、装置、存储介质及设备
CN109508791A (zh) 车辆损伤管理方法
CN111125165A (zh) 集合的合并方法、装置、处理器及机器可读存储介质
CN109977317B (zh) 数据查询方法及装置
CN109582396B (zh) 一种任务状态处理方法、装置、系统及存储介质
CN110019357B (zh) 数据库查询脚本生成方法及装置
CN111125087B (zh) 数据的存储方法及装置
CN110673828A (zh) 一种产品配置方法
CN110888723A (zh) 定时任务处理方法及装置
CN107562533B (zh) 一种数据加载处理方法及装置
CN114817209A (zh) 监控规则的处理方法和装置、处理器及电子设备
CN107291439B (zh) 一种目标增量数据构建方法及装置
CN110020288A (zh) 一种页面刷新方法及装置
CN110019296B (zh) 数据库查询脚本的生成方法、装置、存储介质及处理器
CN110990378A (zh) 一种基于区块链的数据一致性对比方法及设备、介质
CN111459474A (zh) 一种模板化的数据处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination