CN111274242A - 用于医院后勤运维的树结构的数据查找方法、装置 - Google Patents
用于医院后勤运维的树结构的数据查找方法、装置 Download PDFInfo
- Publication number
- CN111274242A CN111274242A CN202010013642.0A CN202010013642A CN111274242A CN 111274242 A CN111274242 A CN 111274242A CN 202010013642 A CN202010013642 A CN 202010013642A CN 111274242 A CN111274242 A CN 111274242A
- Authority
- CN
- China
- Prior art keywords
- node
- tree
- data
- target data
- initial
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000012423 maintenance Methods 0.000 title claims abstract description 31
- 238000004590 computer program Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000002910 structure generation Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- General Business, Economics & Management (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种用于医院后勤运维的树结构的数据查找方法、装置、计算机设备和存储介质,上述方法包括:S10,获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;S20,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;S30,根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;S40,在所述父节点序列或者所述子节点树中查找所述目标数据。上述用于医院后勤运维的树结构的数据查找方法、装置、计算机设备和存储介质可以提高目标数据的查找效率。
Description
技术领域
本发明涉及数据分析和处理技术领域,尤其涉及一种用于医院后勤运维的树结构的数据查找方法、装置、计算机设备和存储介质。
背景技术
在医院后勤信息化系统中,树结构是一种常见的数据结构,广泛运用在部门管理、空间管理、设备管理等功能模块中。传统的树结构必须至少具备树节点编号id、父节点编号parent_id两个字段,并指定树的根节点编号root_id,根据具体数据可以生成一棵树结构,生成相应树结构的过程可以参考图1。
上述树结构数据在计算机内存中一般以键值对的HashMap方式进行保存,以树节点的id作为HashMap的键key,以树节点的parent_id作为HashMap的值value来保存各个节点,这种传统的树存储结构可以参考图1(a)。相应传统树结构的HashMap保存方式可以参考图1(b)。在上述数据结构的基础上,对树结构一般有以下三种典型操作,传统的树操作方法如下:向下遍历子节点:从树的某个节点自上而下遍历查找所有子节点,返回节点的子节点树;向上遍历父节点:从树的某个节点自下而上遍历查找所有父节点,返回节点的父节点序列;树节点搜索:按指定编号或名称在树上查找匹配(精确或模糊)的节点,返回匹配成功的树节点及各匹配成功树节点的所有父节点。
可见,传统树结构的数据存储格式和操作方法,在树节点数量或树层级非常多的情况下,树操作代价将会非常大,具体数据可以参考表2,使得数据处理效率低。
发明内容
针对以上问题,本发明提出一种新的树存储结构,并在此新存储结构基础上提出了一种用于医院后勤运维的树结构的数据查找方法、装置、计算机设备和存储介质。其中新存储结构虽然仍使用HashMap方式保存树节点数据,但区别于传统存储结构,新结构在HashMap的值value上去掉了父节点编号parent_id,替代为父节点序列parent_array和子节点树child_tree。其中,父节点序列parent_array指按树层级自下而上的顺序,以一维数组方式存储树节点的所有父节点id,即parent_id;子节点树child_tree指按树层级自上而下的顺序存储树节点的所有子节点的id、parent_id,这些子节点id、parent_id可以构成该节点的子树。
为实现本发明的目的,在上述新的树存储结构的基础上,提供一种用于医院后勤运维的树结构的数据查找方法,包括如下步骤:
S10,获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;所述树的新存储结构使用HashMap方式保存树节点数据,在HashMap的值上去掉了父节点编号,替代为父节点序列和子节点树;
S20,识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;
S30,根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;
S40,在所述父节点序列或者所述子节点树中查找所述目标数据。
在一个实施例中,所述根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树包括:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
在一个实施例中,所述在所述父节点序列或者所述子节点树中查找所述目标数据包括:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
一种用于医院后勤运维的树结构的数据查找装置,包括:
第一获取模块,用于获取目标数据对应的树存储结构;
识别模块,用于识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;
第二获取模块,用于根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;
查找模块,用于在所述父节点序列或者所述子节点树中查找所述目标数据。
在一个实施例中,所述第二获取模块进一步用于:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
在一个实施例中,所述查找模块进一步用于:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例的用于医院后勤运维的树结构的数据查找方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例的用于医院后勤运维的树结构的数据查找方法的步骤。
上述用于医院后勤运维的树结构的数据查找方法、装置、计算机设备和存储介质,获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树,识别目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点,根据树存储结构获取初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据树存储结构获取以初始节点为父节点的子节点树,以在父节点序列或者子节点树这些新结构中查找目标数据,其区别于传统树结构,享有新结构去掉了父节点编号parent_id,增加了父节点序列parent_array、子节点树child_tree,可以提高目标数据的查找效率。
附图说明
图1(a)是传统树结构的生成过程和存储结构示意图;
图1(b)是传统树结构的代码实现过程示意图;
图2是传统树结构和新的树结构的代码实现过程示意图;
图3是一个实施例的用于医院后勤运维的树结构的数据查找方法流程图;
图4是一个实施例的用于医院后勤运维的树结构的数据查找装置结构示意图;
图5为一个实施例的计算机设备示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为实现本发明的目的,提供一种新的树存储结构。新存储结构虽然仍使用HashMap方式保存树节点数据,但区别于传统存储结构,新结构在HashMap的值value上去掉了父节点编号parent_id,替代为父节点序列parent_array和子节点树child_tree。其中,父节点序列parent_array指按树层级自下而上的顺序,以一维数组方式存储树节点的所有父节点id,即parent_id;子节点树child_tree指按树层级自上而下的顺序存储树节点的所有子节点的id、parent_id,这些子节点id、parent_id可以构成该节点的子树,这种新的树存储结构可以参考图2。
本申请提供的新的树存储结构和用于医院后勤运维的树结构的数据查找方法,可以应用于树结构中相应数据的数据查找终端。上述数据查找终端可以获取目标数据对应的树存储结构,识别所述目标数据的初始节点,在所述树存储结构中定位所述初始节点,根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树,在所述父节点序列或者所述子节点树中查找所述目标数据,以提高在树存储结构中查找目标数据的效率。其中,数据查找终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图1所示,提供了一种用于医院后勤运维的树结构的数据查找方法,以该方法应用于数据查找终端为例进行说明,包括以下步骤:
S10,获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;所述树的新存储结构使用HashMap方式保存树节点数据,在HashMap的值上去掉了父节点编号,替代为父节点序列和子节点树。
上述目标数据为需要查找的数据。目标数据可以包括树结构中一个节点对应的数据,也可以包括相应树存储结构中多个节点多样的存储结构。
上述步骤可以读取目标数据的地址等目标属性信息,以依据上述目标属性信息确定目标数据对应的树存储结构,保证所获取的树存储结构的准确性。
S20,识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点。识别所述目标数据的初始节点的编号,在所述树存储结构中识别定位所述目标数据的初始节点,由于树节点是使用HashMap结构存储,可直接根据节点编号定位,时间复杂度为O(1)。
上述步骤在识别目标数据的初始节点之后,可以获取上述初始节点的地址等属性信息,以依据初始节点的属性信息在树存储结构中定位初始节点,以保证定位结果的准确性。
S30,根据所述树存储结构获取所述初始节点的所有父节点id(编号),根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树。
S40,在所述父节点序列或者所述子节点树中查找所述目标数据。
本实施例可以基于目标节点对应的新的树存储结构,获得父节点序列和子节点树这些新结果,以依据新结构进行目标数据的查找,提高目标数据的查找效率。
上述用于医院后勤运维的树结构的数据查找方法,通过获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树,识别目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点,根据树存储结构获取初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据树存储结构获取以初始节点为父节点的子节点树,以在父节点序列或者子节点树这些新结构中查找目标数据,其区别于传统树结构,享有新结构去掉了父节点编号parent_id,增加了父节点序列parent_array、子节点树child_tree,可以提高目标数据的查找效率。
在一个实施例中,所述根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树包括:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,父节点序列指各个父节点的id构成的一个一维数组;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
所谓的子节点树是提前将所有节点的子树生成并存储起来,这样就可以一次查找,不用遍历树节点来动态生成子树,节约了时间。
具体地,本实施例按自下而上的顺序存储节点的所有父节点id,以获得初始节点对应的父节点序列,按自上而下的顺序存储节点的所有子节点id、parent_id,以获得以初始节点为父节点的子节点树,这样便依据目标数据对应的初始树存储结构获得新结构,以用于目标数据的快速查找。
在一个实施例中,所述在所述父节点序列或者所述子节点树中查找所述目标数据包括:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
树存储结构中,父节点往往在子节点(孩子节点)的上方。本实施例对目标数据的其他数据相对于初始节点的位置进行识别,以依据目标数据的其他数据相对于初始节点的位置选择一个新结构直接确定目标数据,可以有效提高目标数据的获取效率。
在一个实施例中,结合图1所示的树存储结构对上述用于医院后勤运维的树结构的数据查找方法进行说明,图1所示的树存储结构中,以各个节点为初始节点分别对应的父节点序列和子节点树可以参考表1所示,表1中,第一列表示初始节点id,第二列表示父节点序列parent_array,第三列表示子节点树child_tree。
表1
树存储结构在计算机内存中虽然仍以键值对的HashMap方式保存,但保存结构也发生了变化,采用了上述新的树存储结构,对树的三种操作方法也将发生改变,具体如下:
向下遍历子节点:根据节点id直接从新结构中查找到对应节点记录,从记录中获取child_tree,便可直接获得子树。
向上遍历父节点:根据节点id直接从新结构中查找到对应节点记录,从记录中获取parent_array,便可直接获得父节点序列。
树节点搜索:根据节点id直接从新结构中查找到所有匹配的节点记录,再从记录中获取parent_array,便可直接获得节点及父节点序列。
假设树一共有N个节点、M层,节点搜索时可搜索到X个节点,则传统结构和新结构的操作速度比较可以参考表2。表2表明,采用上述新的树存储结构和用于医院后勤运维的树结构的数据查找方法,相应操作速度有大幅度提升。
表2
树操作 | 传统结构速度(次) | 新结构速度(次) |
向下遍历子节点 | 1至N | 1 |
向上遍历父节点 | 1至M-1 | 1 |
树节点搜索 | N+X*(1至M-1) | N |
对于表2中新结构搜索速度的说明:新结构中每个树节点的子树和父节点序列,都在树初始化时提前生成并以HashMap方式保存,树节点编号id作为HashMap的键key,树节点的子树和父节点序列作为HashMap的值value。由于HashMap按照键key查找值value的时间复杂度为O(1),因此查找树任意一个节点的子树和父节点序列,都仅需要查找一次便可获取结果。而树节点搜索需要遍历所有节点才可获取最终结果,所以为需查找N次,但节约了查找每个结果节点的父节点序列的代价,所以仍比传统树结构的查找速度要快。
与现有的树结构操作方法相比,本实施例具有以下技术优点:
采用了一种树结构的新存储方式,在HashMap的值value上去掉了传统结构中的父节点编号parent_id,替换为父序列parent_array、子树child_tree两个新参数,以“空间换时间”来大幅提升树操作速度,树的新存储结构可以参考图5。
目前该方案已经运用在后勤生态平台的空间树操作上,在某医院现场的空间树有几万个节点,采用本方案的树操作方法,操作流畅,没有出现卡顿现象,传统结构和新结构操作树的耗时可以参考表3。
表3
参考图4所示,图4为一个实施例的用于医院后勤运维的树结构的数据查找装置结构示意图,包括:
第一获取模块10,用于获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;
识别模块20,用于识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;
第二获取模块30,用于根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;
查找模块40,用于在所述父节点序列或者所述子节点树中查找所述目标数据。
在一个实施例中,所述第二获取模块进一步用于:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
在一个实施例中,所述查找模块进一步用于:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
关于用于医院后勤运维的树结构的数据查找装置的具体限定可以参见上文中对于用于医院后勤运维的树结构的数据查找方法的限定,在此不再赘述。上述用于医院后勤运维的树结构的数据查找装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用于医院后勤运维的树结构的数据查找方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
基于如上所述的示例,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现如上述各实施例中的任意一种用于医院后勤运维的树结构的数据查找方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述用于医院后勤运维的树结构的数据查找方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
据此,在一个实施例中还提供一种计算机存储介质计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述各实施例中的任意一种用于医院后勤运维的树结构的数据查找方法。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
需要说明的是,本申请实施例所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二\第三”区分的对象在适当情况下可以互换,以使这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
本申请实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种用于医院后勤运维的树结构的数据查找方法,其特征在于,包括如下步骤:
S10,获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;所述树的新存储结构使用HashMap方式保存树节点数据,在HashMap的值上去掉了父节点编号,替代为父节点序列和子节点树;
S20,识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;
S30,根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;
S40,在所述父节点序列或者所述子节点树中查找所述目标数据。
2.根据权利要求1所述的用于医院后勤运维的树结构的数据查找方法,其特征在于,所述根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树包括:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
3.根据权利要求1或2所述的用于医院后勤运维的树结构的数据查找方法,其特征在于,所述在所述父节点序列或者所述子节点树中查找所述目标数据包括:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
4.一种用于医院后勤运维的树结构的数据查找装置,其特征在于,包括:
第一获取模块,用于获取目标数据,按照树的新存储结构生成并存储每个树节点的父节点序列和子节点树;所述树的新存储结构使用HashMap方式保存树节点数据,在HashMap的值上去掉了父节点编号,替代为父节点序列和子节点树;
识别模块,用于识别所述目标数据的初始节点,在所述树存储结构中根据节点编号识别定位所述目标数据的初始节点;
第二获取模块,用于根据所述树存储结构获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列,根据所述树存储结构获取以所述初始节点为父节点的子节点树;
查找模块,用于在所述父节点序列或者所述子节点树中查找所述目标数据。
5.根据权利要求4所述的用于医院后勤运维的树结构的数据查找装置,其特征在于,所述第二获取模块进一步用于:
在所述树存储结构中,按自下而上的顺序获取所述初始节点的所有父节点id,根据所有父节点id确定父节点序列;
在所述树存储结构中,按自上而下的顺序获取所述初始节点的所有子节点id、父节点id,根据所述所有子节点id、父节点id确定以所述初始节点为父节点的子节点树。
6.根据权利要求4或5所述的用于医院后勤运维的树结构的数据查找装置,其特征在于,所述查找模块进一步用于:
若所述目标数据的其他数据在所述初始节点的上方,则在所述父节点序列中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据;
若所述目标数据的其他数据在所述初始节点的下方,则在所述子节点树中查找所述目标数据;所述目标数据的其他数据指所述目标数据中除初始节点以外的数据。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3中任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010013642.0A CN111274242B (zh) | 2020-01-07 | 2020-01-07 | 用于医院后勤运维的树结构的数据查找方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010013642.0A CN111274242B (zh) | 2020-01-07 | 2020-01-07 | 用于医院后勤运维的树结构的数据查找方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111274242A true CN111274242A (zh) | 2020-06-12 |
CN111274242B CN111274242B (zh) | 2023-12-12 |
Family
ID=71111949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010013642.0A Active CN111274242B (zh) | 2020-01-07 | 2020-01-07 | 用于医院后勤运维的树结构的数据查找方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274242B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486499A (zh) * | 2020-12-09 | 2021-03-12 | 广东三维家信息科技有限公司 | Ts代码中目标节点的查找方法、装置、设备及存储介质 |
CN113282799A (zh) * | 2021-05-21 | 2021-08-20 | 武汉联影医疗科技有限公司 | 节点的操作方法、装置、计算机设备和存储介质 |
CN113438317A (zh) * | 2021-07-08 | 2021-09-24 | 数字广东网络建设有限公司 | 一种网关数据处理的方法及装置 |
CN114020748A (zh) * | 2021-11-05 | 2022-02-08 | 光大科技有限公司 | 树形结构通讯录存储方法及装置 |
US20230394021A1 (en) * | 2022-06-07 | 2023-12-07 | Oracle International Corporation | Computing similarity of tree data structures using metric functions defined on sets |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241499A (zh) * | 2008-02-26 | 2008-08-13 | 中兴通讯股份有限公司 | Patricia树快速查找方法 |
CN102446221A (zh) * | 2011-12-22 | 2012-05-09 | 南京联创科技集团股份有限公司 | Bs结构软件中的动态树型结构目录检索方法 |
CN107862026A (zh) * | 2017-10-31 | 2018-03-30 | 北京小度信息科技有限公司 | 数据存储方法及装置、数据查询方法及装置、电子设备 |
CN110222238A (zh) * | 2019-04-30 | 2019-09-10 | 上海交通大学 | 字符串与识别符双向映射的查询方法和系统 |
-
2020
- 2020-01-07 CN CN202010013642.0A patent/CN111274242B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241499A (zh) * | 2008-02-26 | 2008-08-13 | 中兴通讯股份有限公司 | Patricia树快速查找方法 |
CN102446221A (zh) * | 2011-12-22 | 2012-05-09 | 南京联创科技集团股份有限公司 | Bs结构软件中的动态树型结构目录检索方法 |
CN107862026A (zh) * | 2017-10-31 | 2018-03-30 | 北京小度信息科技有限公司 | 数据存储方法及装置、数据查询方法及装置、电子设备 |
CN110222238A (zh) * | 2019-04-30 | 2019-09-10 | 上海交通大学 | 字符串与识别符双向映射的查询方法和系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486499A (zh) * | 2020-12-09 | 2021-03-12 | 广东三维家信息科技有限公司 | Ts代码中目标节点的查找方法、装置、设备及存储介质 |
CN113282799A (zh) * | 2021-05-21 | 2021-08-20 | 武汉联影医疗科技有限公司 | 节点的操作方法、装置、计算机设备和存储介质 |
CN113438317A (zh) * | 2021-07-08 | 2021-09-24 | 数字广东网络建设有限公司 | 一种网关数据处理的方法及装置 |
CN113438317B (zh) * | 2021-07-08 | 2022-08-05 | 数字广东网络建设有限公司 | 一种网关数据处理的方法及装置 |
CN114020748A (zh) * | 2021-11-05 | 2022-02-08 | 光大科技有限公司 | 树形结构通讯录存储方法及装置 |
US20230394021A1 (en) * | 2022-06-07 | 2023-12-07 | Oracle International Corporation | Computing similarity of tree data structures using metric functions defined on sets |
Also Published As
Publication number | Publication date |
---|---|
CN111274242B (zh) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111274242A (zh) | 用于医院后勤运维的树结构的数据查找方法、装置 | |
CN104081380A (zh) | 对来自多个数据源的解决方案的识别和排序 | |
CN109614347B (zh) | 多级缓存数据的处理方法、装置、存储介质及服务器 | |
CN109597979B (zh) | 清单表格生成方法、装置、计算机设备和存储介质 | |
US20230205755A1 (en) | Methods and systems for improved search for data loss prevention | |
CN112527812A (zh) | 基于多维度的数据权限处理方法、装置和计算机设备 | |
CN109542962B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111984659A (zh) | 数据更新方法、装置、计算机设备和存储介质 | |
CN114090155A (zh) | 机器人流程自动化界面元素定位方法、装置和存储介质 | |
CN106250499A (zh) | 一种视频对挖掘方法及装置 | |
CN111581217B (zh) | 数据检测方法、装置、计算机设备和存储介质 | |
CN112329409B (zh) | 一种单元格颜色转换方法、装置及电子设备 | |
CN117390011A (zh) | 报表数据处理方法、装置、计算机设备和存储介质 | |
CN101650689B (zh) | 一种非易失性数据的存储和检索方法及装置 | |
CN117472852A (zh) | 日志数据查询方法、装置、设备和介质 | |
CN111444392B (zh) | 一种漏洞库的访问方法、装置及设备 | |
CN113849482A (zh) | 一种数据迁移方法、装置及电子设备 | |
CN109254985A (zh) | 数据库的数据展示方法及装置、电子设备 | |
CN111143006B (zh) | 命令帮助信息的获取方法及装置 | |
CN109885710B (zh) | 基于差分演化算法的用户画像刻画方法及服务器 | |
CN111880776A (zh) | 一种层级关系获得方法、装置及电子设备 | |
US11308080B2 (en) | Function management method and memory device | |
CN113330404A (zh) | 选取子轨迹的方法、电子设备、计算机可读存储介质 | |
CN112363669B (zh) | 操作行为判定方法、装置、电子设备及计算机可读存储介质 | |
CN113867975B (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 |