CN110825846A - 数据处理方法及装置 - Google Patents

数据处理方法及装置 Download PDF

Info

Publication number
CN110825846A
CN110825846A CN201911019576.1A CN201911019576A CN110825846A CN 110825846 A CN110825846 A CN 110825846A CN 201911019576 A CN201911019576 A CN 201911019576A CN 110825846 A CN110825846 A CN 110825846A
Authority
CN
China
Prior art keywords
target
interval
association
endpoint value
digit
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.)
Granted
Application number
CN201911019576.1A
Other languages
English (en)
Other versions
CN110825846B (zh
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.)
Shenzhen Launch Technology Co Ltd
Original Assignee
Shenzhen Launch 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 Shenzhen Launch Technology Co Ltd filed Critical Shenzhen Launch Technology Co Ltd
Priority to CN201911019576.1A priority Critical patent/CN110825846B/zh
Publication of CN110825846A publication Critical patent/CN110825846A/zh
Application granted granted Critical
Publication of CN110825846B publication Critical patent/CN110825846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开一种数据处理方法及装置,其中,数据处理方法包括:获取待检索的目标数字,在至少一个数字中确定是否存在与所述目标数字匹配的数字,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。采用本申请的技术方案,能够在区间开闭属性任意组合的至少一个数字区间中快速获得目标数字对应的文本,提高检索效率。

Description

数据处理方法及装置
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种数据处理方法及装置。
背景技术
目前,通常将大量数字以及大量数字分别对应的文本逐个全部存储,对于浮点型数据,比如小数,可以无限分割,在检索目标数字对应的文本时,需要在大量的数字以及大量数字对应的文本中逐个查找,对于大数据的处理,就既繁琐又费时,检索效率低,并且无法实现在区间开闭属性任意组合的至少一个数字区间中获得目标数字对应的文本。
发明内容
本申请实施例提供一种数据处理方法及装置,能够快速检索得到目标数字对应的目标文本,检索效率高,并且能够在区间开闭属性任意组合的至少一个数字区间中获得目标数字对应的文本。
第一方面,本申请实施例提供了一种数据处理方法,包括:
获取待检索的目标数字;
在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
在一种可能的实现方式中,所述获取待检索的目标数字之前,所述方法还包括:
获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述右端点值所在数字区间对应的文本。
在一种可能的实现方式中,所述存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,包括:
构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与所述闭合端点值对应的文本之间的对应关系;
定义第一关联容器,所述第一关联容器包括至少一个第一关联元素,一个第一关联元素用于存储一个所述第一对应关系。
在一种可能的实现方式中,所述存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,包括:
构建至少一个第二对应关系,一个第二对应关系用于表示一个数字区间的右端点值与所述右端点值对应的文本之间的对应关系;
定义第二关联容器,所述第二关联容器包括至少一个第二关联元素,一个第二关联元素用于存储一个所述第二对应关系。
在一种可能的实现方式中,所述在至少一个数字中确定是否存在与所述目标数字匹配的数字,包括:
在所述第一关联容器包括至少一个第一关联元素中确定是否存在目标关联元素,所述目标关联元素中的闭合端点值与所述目标数字匹配;
若存在所述目标关联元素,则所述至少一个数字中存在与所述目标数字匹配的数字;
若不存在所述目标关联元素,则所述至少一个数字中不存在与所述目标数字匹配的数字。
在一种可能的实现方式中,所述若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,包括:
构建所述目标数字与一个特定文本之间的第三对应关系;
在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
根据排序在所述第三关联元素前面的关联元素中的右端点值和排序在所述第三关联元素后面的关联元素中的右端点值,确定所述目标数字所在的目标数字区间。
在一种可能的实现方式中,所述将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本之后,所述方法还包括:
删除所述第二关联容器中的所述第三关联元素。
第二方面,本申请实施例提供一种数据处理装置,包括:
第一获取模块,用于获取待检索的目标数字;
第一确定模块,用于在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
第二确定模块,用于若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
第三确定模块,用于若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
第四确定模块,用于将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
在一种可能的实现方式中,所述装置还包括:
第二获取模块,用于获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
第五确定模块,用于根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
第一存储模块,用于存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
第二存储模块,用于存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述右端点值所在数字区间对应的文本。
在一中可能实现的实施方式中,所述第一存储模块包括:
第一构建单元,用于构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与所述闭合端点值对应的文本之间的对应关系;
第一定义单元,用于定义第一关联容器,所述第一关联容器包括至少一个第一关联元素,一个第一关联元素用于存储一个所述第一对应关系。
在一中可能实现的实施方式中,所述第二存储模块包括:
第二构建单元,用于构建至少一个第二对应关系,一个第二对应关系用于表示一个数字区间的右端点值与所述右端点值对应的文本之间的对应关系;
第二定义单元,用于定义第二关联容器,所述第二关联容器包括至少一个第二关联元素,一个第二关联元素用于存储一个所述第二对应关系。
在一种可能实现的实施方式中,所述第一确定模块具体用于:
在所述第一关联容器包括至少一个第一关联元素中确定是否存在目标关联元素,所述目标关联元素中的闭合端点值与所述目标数字匹配;
若存在所述目标关联元素,则所述至少一个数字中存在与所述目标数字匹配的数字;
若不存在所述目标关联元素,则所述至少一个数字中不存在与所述目标数字匹配的数字。
在一种可能实现的实施方式中,所述第三确定模块还包括:
第三构建单元,用于构建所述目标数字与一个特定文本之间的第三对应关系;
新增单元,用于在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
获取单元,用于根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
确定单元,用于根据排序在所述第三关联元素前面的关联元素中的右端点值和排序在所述第三关联元素后面的关联元素中的右端点值,确定所述目标数字所在的目标数字区间。
在一种可能实现的实施方式中,所述装置还包括:
删除模块,用于删除所述第二关联容器中的所述第三关联元素。
第三方面,本申请实施例提供一种数据处理装置,所述数据处理装置包括处理器、存储器以及通信接口,所述处理器、存储器和通信接口相互连接,其中,所述通信接口用于接收和发送数据,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,执行第一方面所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
本申请实施例中,通过获取待检索的目标数字,在至少一个数字中确定是否存在与所述目标数字匹配的数字,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。通过本申请实施例,能够快速检索得到目标数字对应的目标文本,检索效率高,并且能够在区间开闭属性任意组合的至少一个数字区间中获得目标数字对应的文本。
附图说明
为了说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种数据处理方法的流程图;
图2为本申请实施例提供的另一种数据处理方法的流程图;
图3为本申请实施例提供的一种确定是否存在与目标数字匹配的数字方法的流程图;
图4为本申请实施例提供的一种确定目标数字所在的目标数字区间方法的流程图;
图5为本申请实施例提供的一种数据处理装置的结构示意图;
图6为本申请实施例提供的另一种数据处理装置的结构示意图;
图7为本申请实施例提供的又一种数据处理装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
下面将结合附图1,对本申请实施例提供的数据处理方法进行详细介绍。
请参见图1,为本申请实施例提供了一种数据处理方法的流程图。如图1所示,本申请实施例的所述数据处理方法可以包括以下步骤S101-步骤S105。
S101,获取待检索的目标数字;
S102,在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
在本实施例中,至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,该闭合端点值为至少一个数字区间包含的左端点值和/或右端点值,若数字区间为左闭右开区间,则该数字区间的闭合端点值为其左端点值;若数字区间为左开右闭区间,则该数字区间的闭合端点值为其右端点值;若数字区间为左闭右闭区间,则该数字区间的闭合端点值为其左端点值和右端点值;若数字区间为左开右开区间,则没有闭合端点值。闭合端点值的种类可以为小数、整数中的任意一种或多种。
其中,至少一个数字区间中的开闭属性可以为左开右闭、左闭右开、左开右开、左闭右闭中的一种或多种,即至少一个数字区间可以由左开右闭区间、左闭右开区间、左开右开区间、左闭右闭区间中的一种或多种组成。至少一个数字区间中不同的数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大的数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。
其中,至少一个数字区间上的每个数字都分别对应了一个文本,该文本可以是ODX诊断文件,用于存储text table算法类型的汽车诊断检测数据,也可以是用于存储其他数据的文本,本申请实施例不作限定。ODX(Open Diagnostic eXchange)是一种开放的诊断交互格式,一种基于XML的ASAM标准,用于描述诊断相关的ECU(电子控制单元)数据。texttable类型算法是ODX标准中一种基本算法类型,text table类型算法中的数字和汽车诊断数据的文本一一对应,可以是一个数字对应一条文本,也可以是一个连续数字区间对应同样的文本。
可选的,每个数字区间的闭合端点值对应的文本为该闭合端点值所在数字区间所对应的文本。获取待检索的目标数字后,可以在至少一个数字区间的闭合端点值中,查找是否存在与目标数字相匹配的闭合端点值。
S103,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
S104,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
S105,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
在本实施例中,由于至少一个数字是指至少一个数字区间中每个数字区间的闭合端点,且闭合端点值对应的文本为其所在数字区间对应的文本,因此,若在至少一个数字区间的闭合端点值中,存在与目标数字相匹配的闭合端点值,则将与目标数字相匹配的闭合端点值对应的文本作为目标数字对应的文本。
若在至少一个数字区间的闭合端点值中,不存在与目标数字相匹配的闭合端点值,则在至少一个数字区间中确定目标数字所在的目标数字区间,由于每个数字区间上的数字均对应了相同的文本,因此,将目标数字所在目标数字区间对应的文本作为目标数字对应的文本。
在本实施例中,通过获取待检索的目标数字,在至少一个数字中确定是否存在与所述目标数字匹配的数字,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。通过本申请实施例,能够快速检索得到目标数字对应的目标文本,检索效率高,并且能够在区间开闭属性任意组合的至少一个数字区间中获得目标数字对应的文本。
在另一个实施例中,在步骤S101获取待检索的目标数字之前,可以对多个数字以及多个数字的文本进行存储,请参照图2所示,包括但不限于S201-S209,下面具体阐述该实施例:
S201,获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
S202,根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
获取待存储的多个数字以及多个数字对应的文本,一个数字对应一个文本,将多个数字以及多个数字对应的文本进行整理,将对应相同的文本的数字组成一个数字区间,以此方法将至少一个数字划分为至少一个数字区间,其中,不同数字区间对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。其中,至少一个数字区间的开闭属性可以任意组合,具体请参照上一实施例,在此不再阐述。
S203,存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
S204,存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述右端点值所在数字区间对应的文本。
其中,确定至少一个数字区间之后,可以先将至少一个数字区间中每个数字区间的闭合端点值以及该闭合端点值对应的文本进行存储,该闭合端点值为每个数字区间包含的左端点值和/或右端点值。例如,两个数字区间[0,3],(3,6],则将第一个数字区间[0,3]的左闭合端点值0,以及左闭合端点值0对应的文本A进行存储,将第一个数字区间[0,3]的右闭合端点值3,以及右闭合端点值3对应的文本A进行存储,并且将第二个数字区间的闭合端点值6,以及该闭合端点值6对应的文本B进行存储。
将至少一个数字区间中每个数字区间的闭合端点值以及该闭合端点值对应的文本进行存储后,也需要将至少一个数字区间中每个数字区间的右端点值以及右端点值对应的文本进行存储,右端点值对应的文本为其所在数字区间对应的文本。例如,两个数字区间[0,3],(3,6],则将第一个数字区间[0,3]的右端点值3,以及右端点值3对应的文本A进行存储,并且将第二个数字区间的右端点值6,以及该右端点值6对应的文本B进行存储。
可选的,可以将每个数字区间上的闭合端点值与闭合端点值对应的文本之间的对应关系构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与闭合端点值对应的文本之间的对应关系。其中,可以定义一个第一关联容器,该第一关联容器包括至少一个第一关联元素,将每个数字区间上的闭合端点值与闭合端点值对应的文本之间的第一对应关系存储于第一关联元素。
可选的,可以构建至少一个第二对应关系,一个第二对应关系用于表示至少一个数字区间中一个数字区间的右端点值与右端点值对应的文本之间的对应关系。其中,可以建立一个第二关联容器,该第二关联容器包括至少一个第二关联元素,将每个数字区间中的右端点值与右端点值对应的文本之间的第二对应关系存储于第二关联元素中。
优选的,第一关联容器可以为第一map关联容器,第一关联容器中包括的至少一个第一关联元素可以为第一map关联容器中的至少一个第一键值对,将至少一个数字区间中每个数字区间的闭合端点值作为第一键值对中的键,该闭合端点值对应的文本作为第一键值对中的值,建立至少一个第一键值对,存入第一map关联容器中。第二关联容器可以第二map关联容器,第二关联容器包括的至少一个第二关联元素可以为第二map关联容器中的至少一个第二键值对,将至少一个数字区间中每个数字区间的右端点值作为第二键值对中的键,右端点值对应的文本作为第二键值对中的值,建立至少一个第二键值对,存入第二map关联容器中。Map容器是计算机科学中的关联容器,又称关联数组,是一个抽象的数据结构,该map关联容器中包含多个<key,value>(键,值)键值对,且在map关联容器中不会存在完全相同两个键值对的现象。Map容器的多个键值对按照键排序,键是唯一的,内部采用的是一种非常高效的平衡检索二叉树。Key是指储存在map容器中的关键字的数据类型,value是指储存在map容器中的数据值的数据类型。
例如,获取0和12以及0至12之间的至少一个数字,其中,0和3以及0至3之间的数字对应的文本为A,7以及3至7之间的数字对应的文本为B,7至9之间的数字对应的文本为C,9以及9至11之间的数字对应的文本为D,11和12以及11至12之间的数字对应的文本为E。对获取到的至少一个数字进行整理,获得至少一个数字区间为[0,3],(3,7],(7,9),[9,11),[11,12],每个数字区间对应的文本不同,每个数字区间中的任意数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。其中,第一个数字区间[0,3]中的数字对应的文本为A,第二个数字区间(3,7]中的数字对应的文本为B,第三个数字区间(7,9)中的数字对应的文本为C,第四个数字区间[9,11)中的数字对应的文本为D,第五个数字区间[11,12]中的数字对应的文本为E。先定义一个第一map关联容器,该第一map关联容器中包括至少一个第一键值对,将第一个数字区间中的左闭合端点值0作为第一键值对中的键,该左闭合端点值0对应的文本A作为第一键值对中的值,建立一个第一键值对<0,A>,存入第一map关联容器中,将第一个数字区间中的右闭合端点值3作为第一键值对中的键,该右闭合端点值对应的文本A作为第一键值对中的值,建立另一个第一键值对,存入第一map关联容器中。第二个数字区间则将其右闭端点值7,以及该右闭端点值7对应的文本B,新建一个第一键值对<7,B>存入第一map关联容器中。第三个数字区间中没有闭合端点值,则不需要储存。第四个数字区间则将其左闭合端点值9,以及该左闭合端点值9对应的文本D,新建一个第一键值对<9,D>存入第一map关联容器中。第五个数字区间则将其左闭合端点值11以及该左闭合端点值11对应的文本E,新建一个第一键值对<11,E>,存入第一map关联容器中,将其右闭合端点值12以及右闭合端点值12对应的文本E,新建一个第一键值对<12,E>存入第一map关联容器中。
将至少一个数字区间中每个数字区间的闭合端点值存入第一map关联容器中之后,再定义一个第二map关联容器,该第二map关联容器中包括至少一个第二键值对,将至少一个数字区间中每个数字区间的右端点值作为第二键值对的键,该右端点值对应的文本作为第二键值对中的值,存储于第二map关联容器中。则将第一个数字区间中的右闭端点值3作为第二键值对中的键,该右端点值对应的文本A作为第二键值对中的值,建立一个第二键值对<3,A>,存入第二map关联容器中。同理,第二个数字区间则建立一个第二键值对<7,B>,存入第二map关联容器中。第三个数字区间则建立一个第二键值对<9,C>,存入第二map关联容器中。第四个数字区间则建立一个第二键值对<11,D>,存入第二map关联容器中。第五个数字区间在第二map关联容器中存入一个第二键值对<12,E>。
其中,本实施例通过定义二个<字符串,字符串>键值对的map关联容器,第一个字符串表示数字,是数字转换成的字符串,可以表示整数也可以表示小数,第二个字符串是数字对应的文本,将每个数字区间中的闭合端点值与闭合端点值之间的第一对应关系存储于第一map关联容器中,以及每个数字区间中右端点值与右端点值对应的文本之间的第二对应关系存储于第二map关联容器中。
S205,获取待检索的目标数字;
S206,在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点;
获取待检索的目标数字之后,在至少一个数字中确定是否存在与目标数字相匹配的数字,该至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,且每个数字区间的闭合端点值都对应了一个文本。
请参照图3,为本申请实施例提供的一种确定是否存在与目标数字匹配的数字方法的流程图,如图所示,包括步骤S21-S23:
S21,在所述第一关联容器包括至少一个第一关联元素中确定是否存在目标关联元素,所述目标关联元素中的闭合端点值与所述目标数字匹配;
S22,若存在所述目标关联元素,则所述至少一个数字中存在与所述目标数字匹配的数字;
S23,若不存在所述目标关联元素,则所述至少一个数字中不存在与所述目标数字匹配的数字。
在本实施例中,该第一关联容器可以为第一map关联容器,该第一关联容器中的至少一个第一关联元素为第一map关联容器中的至少一个第一键值对。该至少一个第一键值对,用于存储至少一个数字区间中每个数字区间的闭合端点值以及闭合端点值对应的文本。则可以在第一map关联容器的至少一个第一键值对中,确定是否存在与目标数字相匹配的目标键值对,该目标键值对中的闭合端点值与目标数字匹配。
其中,由于存入第一map关联容器中的每个第一键值对中的键都有相对应的值,若在至少一个第一键值对中,存在与目标数字相匹配的目标键值对,则将与目标数字相匹配的目标键值对中的文本确定为目标数字对应的文本。若不存在与目标数字相匹配的目标键值对,则至少一个数字中不存在与目标数字匹配的数字。若目标数字为至少一个数字区间中某个数字区间的闭合端点值,则在第一map关联容器中,存在与目标数字相匹配的目标键值对。若目标数字不是至少一个数字区间中某个数字区间的闭合端点值,则在第一map关联容器中不存在与目标数字相匹配的目标键值对。
S207,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
在本实施例中,若在第一map关联容器的至少一个第一键值对中,存在与目标数字相匹配的目标键值对,则将与目标数字相匹配的目标键值对中的文本确定为目标数字对应的文本。若在第一map关联容器中不存在与目标数字相匹配的目标键值对,则将第一map关联容器中,自动建立的一个用于存储目标数字与一个空文本之间的对应关系的新键值对删除。删除该新键值对,目的是为了使检索之前map关联容器中原来存储的数据保持不变。
S208,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
在本实施例中,若待检索的目标数字在第一map关联容器中,没有检索到与目标数字相匹配的目标键值对,则在第二map关联容器中,调用迭代器或者[]操作符,在至少一个数字区间中每个数字区间的右端点值中,检索是否存在与目标数字相匹配的右端点值。由于第一map关联容器中,已存入了至少一个数字区间中每个数字区间的闭合端点值,若在第一map关联容器中不存在与目标数字相匹配的闭合端点值,则在第二map关联容器中也不存在与目标数字相匹配的右端点值。若第二map关联容器中不存在与目标数字相匹配的右端点值,则在至少一个数字区间中确定目标数字所在的目标数字区间。
请参照图4,为本申请实施例提供的一种确定目标数字所在的目标数字区间方法的流程图,如图所示,包括步骤S31-S34:
S31,构建所述目标数字与一个特定文本之间的第三对应关系;
S32,在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
可选的,先构建目标数字与一个特定文本之间的第三对应关系,该特定文本为一个没有存储数据的空文本。在第二关联容器中新增一个第三关联元素,该第三关联元素用于存储目标数字与目标数字对应的文本之间的第三对应关系。
进一步可选的,可以在第二map关联容器中新增一个第三键值对,该第三键值对中的键用于表示目标数字,该第三键值对中的值用于表示目标数字对应的空文本。
S33,根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
S34,根据排序在所述第三关联元素前面的关联元素中的右端点值和排序在所述第三关联元素后面的关联元素中的右端点值,确定所述目标数字所在的目标数字区间。
在本实施例中,将目标数字与一个空文本之间的对应关系存储于第二map关联容器中后,根据第二map关联人容器中至少一个第二键值对与第三键值对中键的大小,对第二键值对和第三键值对进行排序,排序的方式为升序或者降序,获得排序在第三键值的键值对对前后和排序在第三键值对后面的键值对。根据排序在第三键值对前面的键值对中的右端点值和排序在第三键值对后面的键值对中的右端点值,确定所述目标数字所在的目标数字区间。
S209,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
其中,在第二map关联容器的至少一个第二键值对中,存储了至少一个数字区间中每个数字区间的右端点值,且每个数字区间的右端点值对的文本为右端点值所在数字区间对应的文本,则可以将目标数字区间的右端点值对应的文本作为目标数字对应的文本,且无需确定目标数字区间的开闭属性,无论是左闭右开、左开右闭,左开右开或左闭右闭,排序在第三键值对后面的键值对中的右端点值均为目标数字区间的右端点,则可以将排序在第三键值对后面的键值对中的右端点值所对应的文本作为目标数字对应的文本。
可选的,将排序在第三键值对后面的键值对中的右端点值所对应的文本作为目标数字对应的文本之后,还应该删除插入第二map关联容器中的第三键值对。删除第三键值对,目的是为了使检索之前map关联容器中原来存储的数据保持不变。
在本实施例中,通过定义第一map关联容器与第二map关联容器,将待存储的对个数字以及对个数字对应的文本存储,获取待检索的目标数字之后,先在第一map关联容器中进行检索,若存在与目标数字相匹配的数字,则将与目标数字相匹配的数字对应的文本作为目标数字对应的文本,若不存在与目标数字相匹配的数字,则在第二map关联容器中新增第三键值对,第三键值对用于存储目标数字与一个空文本之间的对应关系,获取目标数字所在的目标数字区间,将目标数字区间的右端点值对应的文本作为目标数字对应的文本。通过本申请实施例,能够在区间开闭属性任意组合的至少一个数字区间中快速获得目标数字对应的文本,提高了检索效率,并且有效存储至少一个数字区间中的数字以及数字对应的文本。
请参见图4,为本申请实施例提供了一种数据处理装置的结构示意图。如图所示,本申请实施例的所述数据处理装置可以包括:
第一获取模块11,用于获取待检索的目标数字;
第一确定模块12,用于在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
在本实施例中,至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,该闭合端点值为至少一个数字区间包含的左端点值和/或右端点值,若数字区间为左闭右开区间,则该数字区间的闭合端点值为其左端点值;若数字区间为左开右闭区间,则该数字区间的闭合端点值为其右端点值;若数字区间为左闭右闭区间,则该数字区间的闭合端点值为其左端点值与右端点值;若数字区间为左开右开区间,则没有闭合端点值。闭合端点值的种类可以为小数、整数中的任意一种或多种。
其中,至少一个数字区间中的开闭属性可以为左开右闭、左闭右开、左开右开、左闭右闭中的一种或多种,即至少一个数字区间可以由左开右闭区间、左闭右开区间、左开右开区间、左闭右闭区间中的一种或多种组成。至少一个数字区间中不同的数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大的数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。
其中,其中,至少一个数字区间上的每个数字都分别对应了一个文本,该文本可以是ODX诊断文件,用于存储text table算法类型的汽车诊断检测数据,也可以是用于存储其他数据的文本,本申请实施例不作限定。ODX(Open Diagnostic eXchange)是一种开放的诊断交互格式,一种基于XML的ASAM标准,用于描述诊断相关的ECU(电子控制单元)数据。texttable类型算法是ODX标准中一种基本算法类型,text table类型算法中的数字和汽车诊断数据的文本一一对应,可以是一个数字对应一条文本,也可以是一个连续数字区间对应同样的文本。
可选的,每个数字区间的闭合端点值对应的文本为该闭合端点值所在数字区间所对应的文本。获取待检索的目标数字后,可以在至少一个数字区间的闭合端点值中,查找是否存在与目标数字相匹配的闭合端点值。
第二确定模块13,用于若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
第三确定模块14,用于若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
第四确定模块15,用于将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本
在本实施例中,若在至少一个数字区间的闭合端点值中,存在与目标数字相匹配的闭合端点值,则将与目标数字相匹配的闭合端点值对应的文本作为目标数字对应的文本。
其中,若在至少一个数字区间的闭合端点值中,不存在与目标数字相匹配的闭合端点值,则在至少一个数字区间中确定目标数字所在的目标数字区间,由于每个数字区间上的数字均对应了相同的文本,因此,将目标数字所在目标数字区间对应的文本作为目标数字对应的文本。
在本申请实施例中,通过获取待检索的目标数字,在至少一个数字中确定是否存在与所述目标数字匹配的数字,若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本,若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。通过本申请实施例,能够快速检索得到目标数字对应的目标文本,检索效率高,并且能够在区间开闭属性任意组合的至少一个数字区间中获得目标数字对应的文本。
具体执行步骤可以参见前述图1方法实施例的描述,此处不在赘述。
如图6所示,为本申请实施例提供的另一种数据处理装置的结构示意图,如图所示,本申请实施例提供的数据处理装置包括:第二获取模块21、第五确定模块22、第一存储模块23、第二存储模块24、第一获取模块25、第一确定模块26、第二确定模块27、第三确定模块28、删除模块29;
第二获取模块21,用于获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
第五确定模块22,用于根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
获取待存储的多个数字以及多个数字对应的文本,一个数字对应一个文本,将多个数字以及多个数字对应的文本进行整理,将对应相同的文本的数字组成一个数字区间,以此方法将至少一个数字划分为至少一个数字区间,其中,不同数字区间对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。其中,至少一个数字区间的开闭属性可以任意组合,具体请参照上一实施例,在此不再阐述。
第一存储模块23,用于存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
可选的,第一存储模块还包括第一构建单元、第一定义单元:
第一构建单元,用于构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与所述闭合端点值对应的文本之间的对应关系;
第一定义单元,用于定义第一关联容器,所述第一关联容器包括至少一个第一关联元素,一个第一关联元素用于存储一个所述第一对应关系;
第二存储模块24,用于存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述数字区间对应的文本;
可选的,第二存储模块包括第二构建单元、第二定义单元:
第二构建单元,用于构建至少一个第二对应关系,一个第二对应关系用于表示一个数字区间的右端点值与所述右端点值对应的文本之间的对应关系;
第二定义单元,用于定义第二关联容器,所述第二关联容器包括至少一个第二关联元素,一个第二关联元素用于存储一个所述第二对应关系。
其中,确定至少一个数字区间之后,可以先将至少一个数字区间中每个数字区间的闭合端点值以及该闭合端点值对应的文本进行存储,该闭合端点值为每个数字区间包含的左端点值和/或右端点值。例如,两个数字区间[0,3],(3,6],则将第一个数字区间[0,3]的左闭合端点值0,以及左闭合端点值0对应的文本A进行存储,将第一个数字区间[0,3]的右闭合端点值3,以及右闭合端点值3对应的文本A进行存储,并且将第二个数字区间的闭合端点值6,以及该闭合端点值6对应的文本B进行存储。
将至少一个数字区间中每个数字区间的闭合端点值以及该闭合端点值对应的文本进行存储后,也需要将至少一个数字区间中每个数字区间的右端点值以及右端点值对应的文本进行存储,右端点值对应的文本为其所在数字区间对应的文本。例如,两个数字区间[0,3],(3,6],则将第一个数字区间[0,3]的右端点值3,以及右端点值3对应的文本A进行存储,并且将第二个数字区间的右端点值6,以及该右端点值6对应的文本B进行存储。
可选的,可以将每个数字区间上的闭合端点值与闭合端点值对应的文本之间的对应关系构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与闭合端点值对应的文本之间的对应关系。其中,可以定义一个第一关联容器,该第一关联容器包括至少一个第一关联元素,将每个数字区间上的闭合端点值与闭合端点值对应的文本之间的第一对应关系存储于第一关联元素。
可选的,可以构建至少一个第二对应关系,一个第二对应关系用于表示至少一个数字区间中一个数字区间的右端点值与右端点值对应的文本之间的对应关系。其中,可以建立一个第二关联容器,该第二关联容器包括至少一个第二关联元素,将每个数字区间中的右端点值与右端点值对应的文本之间的第二对应关系存储于第二关联元素中。
优选的,第一关联容器可以为第一map关联容器,第一关联容器中包括的至少一个第一关联元素可以为第一map关联容器中的至少一个第一键值对,将至少一个数字区间中每个数字区间的闭合端点值作为第一键值对中的键,该闭合端点值对应的文本作为键值对中的值,建立至少一个第一键值对,存入第一map关联容器中。第二关联容器可以第二map关联容器,第二关联容器包括的至少一个第二关联元素可以为第二map关联容器中的至少一个第二键值对,将至少一个数字区间中每个数字区间的右端点值作为第二键值对中的键,右端点值对应的文本作为键值对中的值,建立至少一个第二键值对,存入第二map关联容器中。Map容器是计算机科学中的关联容器,又称关联数组,是一个抽象的数据结构,该map关联容器中包含多个<key,value>(键,值)键值对,且在map关联容器中不会存在完全相同两个键值对的现象。Map容器的多个键值对按照键排序,键是唯一的,内部采用的是一种非常高效的平衡检索二叉树。Key是指储存在map容器中的关键字的数据类型,value是指储存在map容器中的数据值的数据类型。
例如,获取0和12以及0至12之间的至少一个数字,其中,0和3以及0至3之间的数字对应的文本为A,7以及3至7之间的数字对应的文本为B,7至9之间的数字对应的文本为C,9以及9至11之间的数字对应的文本为D,11和12以及11至12之间的数字对应的文本为E。对获取到的至少一个数字进行整理,获得至少一个数字区间为[0,3],(3,7],(7,9),[9,11),[11,12],每个数字区间对应的文本不同,每个数字区间中的任意数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字。其中,第一个数字区间[0,3]中的数字对应的文本为A,第二个数字区间(3,7]中的数字对应的文本为B,第三个数字区间(7,9)中的数字对应的文本为C,第四个数字区间[9,11)中的数字对应的文本为D,第五个数字区间[11,12]中的数字对应的文本为E。先定义一个第一map关联容器,该第一map关联容器中包括至少一个第一键值对,将第一个数字区间中的左闭合端点值0作为第一键值对中的键,该左闭合端点值0对应的文本A作为第一键值对中的值,建立一个第一键值对<0,A>,存入第一map关联容器中,将第一个数字区间中的右闭合端点值3作为第一键值对中的键,该右闭合端点值对应的文本A作为第一键值对中的值,建立另一个第一键值对,存入第一map关联容器中。第二个数字区间则将其右闭端点值7,以及该右闭端点值7对应的文本B,新建一个第一键值对<7,B>存入第一map关联容器中。第三个数字区间中没有闭合端点值,则不需要储存。第四个数字区间则将其左闭合端点值9,以及该左闭合端点值9对应的文本D,新建一个第一键值对<9,D>存入第一map关联容器中。第五个数字区间则将其左闭合端点值11以及该左闭合端点值11对应的文本E,新建一个第一键值对<11,E>,存入第一map关联容器中,将其右闭合端点值12以及右闭合端点值12对应的文本E,新建一个第一键值对<12,E>存入第一map关联容器中。
将至少一个数字区间中每个数字区间的闭合端点值存入第一map关联容器中之后,再定义一个第二map关联容器,该第二map关联容器中包括至少一个第二键值对,将至少一个数字区间中每个数字区间的右端点值作为第二键值对的键,该右端点值对应的文本作为第二键值对中的值,存储于第二map关联容器中。则将第一个数字区间中的右闭端点值3作为第二键值对中的键,该右端点值对应的文本A作为第二键值对中的值,建立一个第二键值对<3,A>,存入第二map关联容器中。同理,第二个数字区间则建立一个第二键值对<7,B>,存入第二map关联容器中。第三个数字区间则建立一个第二键值对<9,C>,存入第二map关联容器中。第四个数字区间则建立一个第二键值对<11,D>,存入第二map关联容器中。第五个数字区间在第二map关联容器中存入一个第二键值对<12,E>。
其中,本实施例通过定义二个<字符串,字符串>键值对的map关联容器,第一个字符串表示数字,是数字转换成的字符串,可以表示整数也可以表示小数,第二个字符串是数字对应的文本,将每个数字区间中的闭合端点值与闭合端点值之间的第一对应关系存储于第一map关联容器中,以及每个数字区间中右端点值与右端点值对应的文本之间的第二对应关系存储于第二map关联容器中。
第一获取模块25,用于获取待检索的目标数字
第一确定模块26,用于在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
在本实施例中,该第一关联容器可以为第一map关联容器,该第一关联容器中的至少一个第一关联元素为第一map关联容器中的至少一个第一键值对。该至少一个第一键值对,用于存储至少一个数字区间中每个数字区间的闭合端点值以及闭合端点值对应的文本。则可以在第一map关联容器的至少一个第一键值对中,确定是否存在与目标数字相匹配的目标键值对,该目标键值对中的闭合端点值与目标数字匹配。
其中,由于存入第一map关联容器中的每个第一键值对中的键都有相对应的值,若在至少一个第一键值对中,存在与目标数字相匹配的目标键值对,则将与目标数字相匹配的目标键值对中的文本确定为目标数字对应的文本。若不存在与目标数字相匹配的目标键值对,则至少一个数字中不存在与目标数字匹配的数字。若目标数字为至少一个数字区间中某个数字区间的闭合端点值,则在第一map关联容器中,存在与目标数字相匹配的目标键值对。若目标数字不是至少一个数字区间中某个数字区间的闭合端点值,则在第一map关联容器中不存在与目标数字相匹配的目标键值对。
第二确定模块27,用于若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
在本实施例中,若在第一map关联容器的至少一个第一键值对中,存在与目标数字相匹配的目标键值对,则将与目标数字相匹配的目标键值对中的文本确定为目标数字对应的文本。若在第一map关联容器中不存在与目标数字相匹配的目标键值对,将第一map关联容器中自动建立的一个用于存储目标数字与一个空文本之间的对应关系的新键值对删除。删除该新键值对,目的是为了使检索之前map关联容器中原来存储的数据保持不变。
第三确定模块28,用于若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
可选的,第三确定模块包括第三构建单元、新增单元、获取单元、确定单元:
第三构建单元,用于构建所述目标数字与一个特定文本之间的第三对应关系;
新增单元,用于在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
获取单元,用于根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
确定单元,用于根据排序在所述第三关联元素前面的关联元素中的闭合端点值和排序在所述第三关联元素后面的关联元素中的闭合端点值,确定所述目标数字所在的目标数字区间。
在本实施例中,若待检索的目标数字在第一map关联容器中,没有检索到与目标数字相匹配的目标键值对,则在第二map关联容器中,调用迭代器或者[]操作符,在至少一个数字区间中每个数字区间的右端点值中,检索是否存在与目标数字相匹配的右端点值。由于第一map关联容器中,已存入了至少一个数字区间中每个数字区间的闭合端点值,若在第一map关联容器中不存在与目标数字相匹配的闭合端点值,则在第二map关联容器中也不存在与目标数字相匹配的右端点值。若第二map关联容器中不存在与目标数字相匹配的右端点值,则在至少一个数字区间中确定目标数字所在的目标数字区间。
在本实施例中,将目标数字与一个空文本之间的对应关系存储于第二map关联容器中后,根据第二map关联人容器中至少一个第二键值对与第三键值对中键的大小,对第二键值对和第三键值对进行排序,排序的方式为升序或者降序,获得排序在第三键值的键值对对前后和排序在第三键值对后面的键值对。根据排序在第三键值对前面的键值对中的右端点值和排序在第三键值对后面的键值对中的右端点值,确定所述目标数字所在的目标数字区间。
第四确定模块29,用于将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本;
其中,在第二map关联容器的至少一个第二键值对中,存储了至少一个数字区间中每个数字区间的右端点值,且每个数字区间的右端点值对的文本为右端点值所在数字区间对应的文本,则可以将目标数字区间的右端点值对应的文本作为目标数字对应的文本,且无需确定目标数字区间的开闭属性,无论是左闭右开、左开右闭,左开右开或左闭右闭,排序在第三键值对后面的键值对中的右端点值均为目标数字区间的右端点,则可以将排序在第三键值对后面的键值对中的右端点值所对应的文本作为目标数字对应的文本。
删除模块30,用于删除所述第一关联容器中的所述第三关联元素。
可选的,将排序在第三键值对后面的键值对中的右端点值所对应的文本作为目标数字对应的文本之后,还应该删除插入第二map关联容器中的第三键值对。删除第三键值对,目的是为了使检索之前map关联容器中原来存储的数据保持不变。
在本实施例中,通过定义第一map关联容器与第二map关联容器,将待存储的对个数字以及对个数字对应的文本存储,获取待检索的目标数字之后,先在第一map关联容器中进行检索,若存在与目标数字相匹配的数字,则将与目标数字相匹配的数字对应的文本作为目标数字对应的文本,若不存在与目标数字相匹配的数字,则在第二map关联容器中新增第三键值对,第三键值对用于存储目标数字与一个空文本之间的对应关系,获取目标数字所在的目标数字区间,将目标数字区间的右端点值对应的文本作为目标数字对应的文本。通过本申请实施例,能够在区间开闭属性任意组合的至少一个数字区间中快速获得目标数字对应的文本,提高了检索效率,并且有效存储至少一个数字区间中的数字以及数字对应的文本。
具体执行步骤可以参见前述图1方法实施例的描述,此处不在赘述。
请参照图7,为本申请实施例提供的另一种数据处理装置的结构示意图,如图7所示,所述数据处理装置1000可以包括:至少一个处理器1001,例如CPU,至少一个通信接口1003,存储器1004,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。通信接口1003可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1004可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1004中可以包括操作系统、网络通信模块以及程序指令。
在图7所示的数据处理装置1000中,处理器1001可以用于加载存储器1004中存储的程序指令,并具体执行以下操作:
获取待检索的目标数字;
在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
在一种可能的实现方式中,所述获取待检索的目标数字之前,所述方法还包括:
获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述右端点值所在数字区间对应的文本。
在一种可能的实现方式中,所述存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,包括:
构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与所述闭合端点值对应的文本之间的对应关系;
定义第一关联容器,所述第一关联容器包括至少一个第一关联元素,一个第一关联元素用于存储一个所述第一对应关系。
在一种可能的实现方式中,所述存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,包括:
构建至少一个第二对应关系,一个第二对应关系用于表示一个数字区间的右端点值与所述右端点值对应的文本之间的对应关系;
定义第二关联容器,所述第二关联容器包括至少一个第二关联元素,一个第二关联元素用于存储一个所述第二对应关系。
在一种可能的实现方式中,所述在至少一个数字中确定是否存在与所述目标数字匹配的数字,包括:
在所述第一关联容器包括至少一个第一关联元素中确定是否存在目标关联元素,所述目标关联元素中的闭合端点值与所述目标数字匹配;
若存在所述目标关联元素,则所述至少一个数字中存在与所述目标数字匹配的数字;
若不存在所述目标关联元素,则所述至少一个数字中不存在与所述目标数字匹配的数字。
在一种可能的实现方式中,所述若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,包括:
构建所述目标数字与一个特定文本之间的第三对应关系;
在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
根据排序在所述第三关联元素前面的关联元素中的右端点值和排序在所述第三关联元素后面的关联元素中的右端点值,确定所述目标数字所在的目标数字区间。
在一种可能的实现方式中,所述将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本之后,所述方法还包括:
删除所述第一关联容器没能检索到所述目标数字时会默认新增的第三关联元素以及第二关联容器中的所述第三关联元素。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1所示实施例的方法步骤,具体执行过程可以参见图1所示实施例的具体说明,在此不进行赘述
需要说明的是,具体执行过程可以参见图1所示方法实施例的具体说明,在此不进行赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
获取待检索的目标数字;
在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
2.如权利要求1所述的方法,其特征在于,在所述获取待检索的目标数字之前,所述方法还包括:
获取待存储的多个数字以及所述多个数字对应的多个文本,一个数字对应一个文本;
根据所述多个数字以及所述多个数字对应的多个文本,确定至少一个数字区间,其中,不同数字区间中的数字对应的文本不同,同一个数字区间中的数字对应的文本相同,任意两个相邻数字区间中较大数字区间的左端点值与较小数字区间的右端点值相同,所述较大数字区间中任一数字均大于较小数字区间中的任一数字;
存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,所述右端点值对应的文本为所述右端点值所在数字区间对应的文本。
3.如权利要求2所述的方法,其特征在于,所述存储所述至少一个数字区间中每个数字区间的闭合端点值以及所述闭合端点值所对应的文本;
构建至少一个第一对应关系,一个第一对应关系用于表示一个闭合端点值与所述闭合端点值对应的文本之间的对应关系;
定义第一关联容器,所述第一关联容器包括至少一个第一关联元素,一个第一关联元素用于存储一个所述第一对应关系。
4.如权利要求2所述的方法,其特征在于,所述存储所述至少一个数字区间中每个数字区间的右端点值以及所述右端点值对应的文本,包括:
构建至少一个第二对应关系,一个第二对应关系用于表示一个数字区间的右端点值与所述右端点值对应的文本之间的对应关系;
定义第二关联容器,所述第二关联容器包括至少一个第二关联元素,一个第二关联元素用于存储一个所述第二对应关系。
5.如权利要求3所述的方法,其特征在于,所述在至少一个数字中确定是否存在与所述目标数字匹配的数字,包括:
在所述第一关联容器包括至少一个第一关联元素中确定是否存在目标关联元素,所述目标关联元素中的闭合端点值与所述目标数字匹配;
若存在所述目标关联元素,则所述至少一个数字中存在与所述目标数字匹配的数字;
若不存在所述目标关联元素,则所述至少一个数字中不存在与所述目标数字匹配的数字。
6.如权利要求4所述的方法,其特征在于,所述若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间,包括:
构建所述目标数字与一个特定文本之间的第三对应关系;
在所述第二关联容器中新增第三关联元素,所述第三关联元素用于存储所述第三对应关系;
根据所述至少一个第二关联元素和所述第三关联元素中数字的大小,将所述至少一个第二关联元素与所述第三关联元素排序,并获取排序在所述第三关联元素前面的关联元素和排序在所述第三关联元素后面的关联元素;
根据排序在所述第三关联元素前面的关联元素中的右端点值和排序在所述第三关联元素后面的关联元素中的右端点值,确定所述目标数字所在的目标数字区间。
7.如权利6所述的方法,其特征在于,所述将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本之后,所述方法还包括:
删除所述第二关联容器中的所述第三关联元素。
8.一种数据处理装置,其特征在于,包括:
第一获取模块,用于获取待检索的目标数字;
第一确定模块,用于在至少一个数字中确定是否存在与所述目标数字匹配的数字,所述至少一个数字为至少一个数字区间中每个数字区间的闭合端点值,所述闭合端点值为所述数字区间包含的左端点值和/或右端点值;
第二确定模块,用于若所述至少一个数字中存在与所述目标数字匹配的数字,将与所述目标数字匹配的数字对应的文本确定为所述目标数字对应的目标文本;
第三确定模块,用于若所述至少一个数字中不存在与所述目标数字匹配的数字,则在所述至少一个数字区间中确定所述目标数字所在的目标数字区间;
第四确定模块,用于将所述目标数字区间对应的文本确定为所述目标数字对应的目标文本。
9.一种数据处理装置,其特征在于,包括处理器、存储器以及通信接口,所述处理器、存储器和通信接口相互连接,其中,所述通信接口用于接收和发送数据,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至7任一项所述的方法。
CN201911019576.1A 2019-10-24 2019-10-24 数据处理方法及装置 Active CN110825846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911019576.1A CN110825846B (zh) 2019-10-24 2019-10-24 数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911019576.1A CN110825846B (zh) 2019-10-24 2019-10-24 数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN110825846A true CN110825846A (zh) 2020-02-21
CN110825846B CN110825846B (zh) 2023-10-20

Family

ID=69550546

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911019576.1A Active CN110825846B (zh) 2019-10-24 2019-10-24 数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN110825846B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112667675A (zh) * 2021-03-17 2021-04-16 杭州趣链科技有限公司 数据查验方法、电子装置和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049516A (zh) * 2012-12-14 2013-04-17 北京神州绿盟信息安全科技股份有限公司 一种数据处理方法及装置
CN106294595A (zh) * 2016-07-29 2017-01-04 海尔优家智能科技(北京)有限公司 一种文档存储、检索方法及装置
CN108376170A (zh) * 2018-02-27 2018-08-07 广州酷狗计算机科技有限公司 确定检索结果的方法和装置
US20190205636A1 (en) * 2018-01-02 2019-07-04 Bank Of America Corporation Artificial Intelligence Based Smart Data Engine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049516A (zh) * 2012-12-14 2013-04-17 北京神州绿盟信息安全科技股份有限公司 一种数据处理方法及装置
CN106294595A (zh) * 2016-07-29 2017-01-04 海尔优家智能科技(北京)有限公司 一种文档存储、检索方法及装置
US20190205636A1 (en) * 2018-01-02 2019-07-04 Bank Of America Corporation Artificial Intelligence Based Smart Data Engine
CN108376170A (zh) * 2018-02-27 2018-08-07 广州酷狗计算机科技有限公司 确定检索结果的方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112667675A (zh) * 2021-03-17 2021-04-16 杭州趣链科技有限公司 数据查验方法、电子装置和存储介质
CN112667675B (zh) * 2021-03-17 2021-06-01 杭州趣链科技有限公司 数据查验方法、电子装置和存储介质

Also Published As

Publication number Publication date
CN110825846B (zh) 2023-10-20

Similar Documents

Publication Publication Date Title
CN111324577A (zh) 一种Yml文件读写的方法及装置
CN113946546B (zh) 异常检测方法、计算机存储介质及程序产品
CN116756327B (zh) 基于知识推断的威胁情报关系抽取方法、装置和电子设备
CN111813744A (zh) 文件的搜索方法、装置、设备及存储介质
CN113268485B (zh) 数据表关联分析方法、装置、设备及存储介质
CN101635001B (zh) 从数据库提取信息的方法和设备
CN110825846B (zh) 数据处理方法及装置
CN108628907A (zh) 一种用于基于Aho-Corasick的Trie树多关键词匹配的方法
CN113918437A (zh) 用户行为数据分析方法、装置、计算机设备和存储介质
CN110807092B (zh) 数据处理方法及装置
CN112348188A (zh) 模型生成方法及装置、电子设备和存储介质
CN112711649A (zh) 一种数据库多字段匹配方法、装置、设备及存储介质
CN109657060B (zh) 安全生产事故案例推送方法及系统
JP5555238B2 (ja) ベイジアンネットワーク構造学習のための情報処理装置及びプログラム
CN114444721A (zh) 模型训练方法、装置、电子设备及计算机存储介质
CN114896252A (zh) 物联网设备的查询方法、装置、计算机设备及存储介质
KR20220099745A (ko) 지리공간 블록체인 데이터 검색을 위한 공간 분할 기반의 트리 인덱싱 및 질의어 처리 방법 및 장치
CN110502611B (zh) 字符串检索方法和装置
CN109558521A (zh) 大规模关键词多模匹配方法、装置以及设备
US20070214127A1 (en) Scalable data extraction from data stores
CN102298592A (zh) 名单管理方法及装置
CN111626662A (zh) 一种仓库网络监控信息的提取方法
CN109815225B (zh) 基于前缀树结构的并行化前缀数据检索方法和系统
US8849866B2 (en) Method and computer program product for creating ordered data structure
CN106570172A (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
GR01 Patent grant
GR01 Patent grant