CN113282799A - 节点的操作方法、装置、计算机设备和存储介质 - Google Patents
节点的操作方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113282799A CN113282799A CN202110558073.2A CN202110558073A CN113282799A CN 113282799 A CN113282799 A CN 113282799A CN 202110558073 A CN202110558073 A CN 202110558073A CN 113282799 A CN113282799 A CN 113282799A
- Authority
- CN
- China
- Prior art keywords
- node
- operated
- information
- depth information
- determining
- 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
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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- 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)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种节点的操作方法、装置、计算机设备和存储介质。所述方法包括:获取待操作节点及所述待操作节点的属性信息;所述属性信息用于表征所述待操作节点在树形结构树中的位置信息;根据所述待操作节点的属性信息,确定所述待操作节点在所述树形结构树中的深度信息;根据所述深度信息,确定所述待操作节点的对象信息;所述对象信息用于表征所述待操作节点的身份信息。采用本方法在查找节点时,能够节省***的内存空间。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种节点的操作方法、装置、计算机设备和存储介质。
背景技术
随着信息技术的快速发展,在业务***中,通常会构建树形结构树来显示业务***的结构,例如,越来越多的医疗机构开展了医疗信息***的建设,医疗机构下面划分众多的子医院,而这些子医院下面又有许多的部门、科室等等,这样一层一层的划分下去。其中,每个子医院可以作为树形结构树的父节点,子医院下面的部门、科室等可以作为树形结构树的叶子节点。
当用户需要对树形结构树的节点进行操作时,一般必须先找到该节点。相关技术中,在查找节点时,大多通过递归查询方式查找。具体为:从树形结构树的第一层开始查找,每个节点都会有自身的一些相关信息,在查找每层节点时会给每层节点分配相应的内存空间,以存放这些节点的信息。当在该层节点上没有查找到所需节点时,继续往下层进行查找,同样给下层节点分配内存空间存放信息,按照此方式迭代查找,直至找到所需节点。
然而上述技术中的节点查找方式比较浪费***的内存空间。
发明内容
基于此,有必要针对上述技术问题,提供一种查找节点时,能够节省***内存空间的节点的操作方法、装置、计算机设备和存储介质。
一种节点的操作方法,该方法包括:
获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;
根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;
根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
在其中一个实施例中,上述根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息,包括:
根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组;
根据上述深度信息数组,确定待操作节点在树形结构树中的深度信息。
在其中一个实施例中,上述根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组,包括:
对待操作节点的属性信息进行切分,得到待操作节点的属性信息对应的深度信息数组。
在其中一个实施例中,上述根据上述深度信息,确定待操作节点的对象信息,包括:
判断上述深度信息是否满足预设条件,得到第一判断结果;
根据上述第一判断结果确定待操作节点的对象信息。
在其中一个实施例中,上述预设条件为与预设阈值的关系,上述根据上述第一判断结果确定待操作节点的对象信息,包括:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并确定待操作节点的对象信息;和/或,
若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点所在的层级,并根据上述所在的层级确定待操作节点的对象信息。
在其中一个实施例中,上述方法还包括:
获取待操作节点对应的子节点属性信息;上述子节点属性信息用于表征待操作节点是否存在子节点;
根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点。
在其中一个实施例中,上述根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点,包括:
若待操作节点存在至少一个子节点,则基于获取的子节点的属性信息,在待操作节点的下一层添加新的子节点;
若待操作节点不存在子节点,则对待操作节点创建子节点属性,并基于创建的子节点属性,在待操作节点的下一层添加新的子节点。
在其中一个实施例中,上述方法还包括:
对上述待操作节点的对象信息进行修改。
在其中一个实施例中,上述对上述待操作节点的对象信息进行修改,包括:
获取待修改信息;
根据上述待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息。
在其中一个实施例中,上述方法还包括:
根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除。
在其中一个实施例中,上述根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除,包括:
判断上述深度信息与所述预设阈值的关系,得到第二判断结果;
根据上述第二判断结果对待操作节点的对象信息进行删除。
上述判断深度信息与所述预设阈值的关系可以是判断深度信息是否大于预设阈值。
在其中一个实施例中,上述预设阈值为2,上述根据上述第二判断结果对待操作节点的对象信息进行删除,包括:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并删除待操作节点的对象信息;
若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点对应的父节点以及父节点的属性信息,并根据父节点的属性信息删除待操作节点的对象信息。
一种节点的操作装置,该装置包括:
获取模块,用于获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;
深度信息确定模块,用于根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;
对象信息确定模块,用于根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;
根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;
根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;
根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;
根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
上述节点的操作方法、装置、计算机设备和存储介质,通过获取待操作节点及其属性信息,根据属性信息确定待操作节点在树形结构树中的深度信息,并根据深度信息确定待操作对象的对象信息;其中,属性信息用于表征待操作节点在树形结构树中的位置信息,对象信息用于表征待操作节点的身份信息。在该方法中,由于可以通过待操作节点在树形结构树中的位置信息确定其深度信息,并通过深度信息就可以确定表征待操作节点身份信息的对象信息,即查找到待操作节点,在该查找过程中不需要循环遍历或递归遍历各层节点,不需要保存各层节点的信息,从而节省***的内存空间。
附图说明
图1为一个实施例中计算机设备的内部结构图;
图2为一个实施例中节点的操作方法的流程示意图;
图3为另一个实施例中节点的操作步骤的流程示意图;
图4为另一个实施例中节点的操作方法的流程示意图;
图5为另一个实施例中节点的操作方法的流程示意图;
图6为另一个实施例中节点的操作方法的流程示意图;
图7为另一个实施例中节点的操作方法的流程示意图;
图8为一个实施例中对节点进行各种操作的示例图;
图9为一个实施例中节点的操作装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的节点的操作方法,可以应用于计算机设备,该计算机设备可以是终端或服务器,以该计算机设备是终端为例,其内部结构图可以如图1所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种节点的操作方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
需要说明的是,本申请实施例的执行主体可以是节点的操作装置,也可以是计算机设备,以下就以计算机设备为执行主体来对本申请的技术方案进行说明。
在一个实施例中,如图2所示,提供了一种节点的操作方法,该方法可以包括以下步骤:
S202,获取待操作节点的属性信息。
其中,上述属性信息用于表征待操作节点在树形结构树中的位置信息;待操作节点可以是一个或多个。树形结构树可以是包括根节点与叶子节点的多个节点构成的结构树,其中的根节点一般只有一个,叶子节点可以是一个或多个,叶子节点可以包括父节点和子节点。本实施例中的待操作节点一般指的都是叶子节点。
另外,节点的属性信息可以表征节点在树形结构树中的位置信息,例如该节点属于叶子节点的父节点还是子节点、在树形结构树中属于哪一层、哪一个分支等等。
在需要对节点进行操作时,可以将树形结构数据通过antd提供的UI树形组件渲染到页面上,其中树形结构树的数据可以记为treeData,在渲染完成之后,当前页面就会出现层级关系的树形结构图,树形结构树中的每个节点的数据中可以包括该节点的属性信息、标识id、标题title等字段信息等。这里对节点的操作可以包括查找节点、删除节点、修改节点、增加/添加节点等,所以这里将要执行操作的节点称为待操作节点。这里通过渲染得到的树形结构图就可以获得任意需要操作的节点的属性信息。
需要说明的是,本实施例中对节点的操作主要是查找操作,即在树形结构树中找到该节点,找到该节点之后,即可对节点进行进一步地操作,例如后续的删除节点、修改节点、增加/添加节点等操作。
S204,根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息。
在本步骤中,在获得待操作节点的属性信息之后,就可以通过对待操作节点的属性信息进行分析,通过分析获得待操作节点在树形结构树中具体的深度,并结合根节点的深度获得该待操作节点的深度信息。这里根节点的深度通常是0或者1,待操作节点的深度信息可以表征待操作节点在树形结构树中的层数、层数中的具***置等等。
S206,根据上述深度信息,确定待操作节点的对象信息。
在本步骤中,上述对象信息用于表征待操作节点的身份信息;在确定出待操作节点在树形结构树中的深度信息之后,就可以通过深度信息确定该待操作节点在树形结构树中具体的层数以及在该层数上具体的位置,即找到该待操作节点,那么也就可以获得该待操作节点的对象信息,该对象信息可以包括待操作节点的标识id、标题title等字段信息。例如标识id可以是0、0-0、0-0-1等等,标题title可以是root、parent、leaf等等。
上述节点的操作方法中,通过获取待操作节点及其属性信息,根据属性信息确定待操作节点在树形结构树中的深度信息,并根据深度信息确定待操作对象的对象信息;其中,属性信息用于表征待操作节点在树形结构树中的位置信息,对象信息用于表征待操作节点的身份信息。在该方法中,由于可以通过待操作节点在树形结构树中的位置信息确定其深度信息,并通过深度信息就可以确定表征待操作节点身份信息的对象信息,即查找到待操作节点,在该查找过程中不需要循环遍历或递归遍历各层节点,不需要保存各层节点的信息,从而节省***的内存空间。
在另一个实施例中,如图3所示,提供了另一种节点的操作方法,在上述实施例的基础上,上述S204可以包括以下步骤:
S302,根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组。
在本步骤中,在上述获得待操作节点的属性信息之后,属性信息一般表征该待操作节点在树形结构树中的位置信息,所以通常会包括该待操作节点所从属的父节点/根节点的位置信息以及其自身的位置信息,所以一般不会是一个单纯的数字,通常会是一个数字串或者字符串等。那么在获得该待操作节点的属性信息之后,就可以对该待操作节点的属性信息进行切分,将该待操作节点的属性信息切分成一个个单独的数字或字符串,并将切分后各个单独的数字或字符串组合成一个数组,记为深度信息数组。
示例地,假设待操作节点的属性信息是由一个数字串组成的,例如是0-0-1,那么对该属性信息进行切分之后,就可以得到0、0、1三个单独的数字,然后可以把这三个数字组合起来,得到一个数组,记为a[3],该数组a[3]=[0、0、1]。
S304,根据上述深度信息数组,确定待操作节点在树形结构树中的深度信息。
在本步骤中,在上述获得待操作节点对应的深度信息数组之后,就可以获得该深度信息数组包含的数字或字符串的数量,之后可以将包含的数字或字符串的数量作为该待操作节点的深度信息。继续以上述待操作节点的属性信息为0-0-1为例,通过上述S302可以获得该待操作节点的深度信息数组为[0、0、1],由此可知,该深度信息数组中包含3个数字,那么就可以获知该待操作节点的深度信息为3。
在上述获得待操作节点的深度信息之后,就可以通过深度信息去获取对象信息,也就是说,相应地,参见图4所示,上述S206可以包括以下步骤:
S402,判断上述深度信息是否满足预设条件,得到第一判断结果。
其中,上述预设条件为与预设阈值的关系,预设阈值可以根据实际情况设定,在本实施例中,可选的,上述预设阈值为2。
在上述获得待操作节点对应的深度信息之后,可以判断该深度信息是否大于预设阈值2,得到判断结果,记为第一判断结果。这里判断大小的方式可以是将深度信息与2作差,并将获得的差值和0作比较,得到第一判断结果,其中,若差值大于0,则说明深度信息大于2,否则说明深度小于等于2;或者,也可以是将深度信息和2作商,将获得的商值和1作比较,得到第一判断结果,其中,若商值大于1,则说明深度信息大于2,否则说明深度小于等于2;或者,也可以直接将深度信息和2作比较,并将得到的比较结果作为第一判断结果。
S404,根据上述第一判断结果确定待操作节点的对象信息。
在本步骤中,在上述得到第一判断结果之后,就可以获知深度信息是否大于2。可选的,若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并确定待操作节点的对象信息;和/或,若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点所在的层级,并根据上述所在的层级确定待操作节点的对象信息。其中,遍历可以是循环遍历,如for循环嵌套for循环;也可以是递归遍历,对每层节点都进行遍历。
一般树形结构树包括根节点和叶子节点,根节点和叶子节点均可以称为是树的节点。其中,根节点一般位于第一层,叶子节点通常从第二层开始,即从树的第二层开始往下均是叶子节点。
也就是说,若待操作节点的深度信息不大于2,那么说明待操作节点位于树形结构树的第一层或者第二层,一般第一层是根节点,这里针对叶子节点进行操作,所以所这里的待操作节点就是位于第一层的叶子节点,之后可以通过该待操作节点的深度信息,在第一层叶子节点中查找到得到该待操作节点的位置,获得该待操作节点的对象信息。若待操作节点的深度信息大于2,则说明该待操作节点位于树形结构树的叶子节点的第二层或者之下的某一层(例如待操作节点的深度信息为3,那么说明该待操作节点位于叶子节点的第二层,或者说位于树的第三层),那么可以先通过遍历该待操作节点的深度信息数组,例如是遍历[0、0、1],获得有3个数,即该待操作节点在第二层叶子节点,然后通过该层在深度信息数组中的1,获得待操作节点在该层的第二个位置上,这样即可找到待操作节点,获得该待操作节点的对象信息。
本实施例中,通过对待操作节点的属性信息进行切分,并通过切分获得的深度信息数组确定待操作节点在树形结构树中的深度信息,该深度信息确定过程简单直观,占用***资源少,因此可以提升确定深度信息的效率以及确定的深度信息的准确性。进一步地,在此基础上可以通过深度信息是否大于预设阈值的判断结果来确定待操作节点的对象信息,这样可以直观且快速地找到待操作节点,并获得对象信息,在节省***内存的基础上进一步提升对待操作节点进行操作的效率。
在另一个实施例中,如图5所示,提供了另一种节点的操作方法,在上述实施例的基础上,上述方法还可以包括以下步骤:
S502,获取待操作节点对应的子节点属性信息;上述子节点属性信息用于表征待操作节点是否存在子节点。
在本步骤中,在上述将树形结构数据渲染到页面上之后,树形结构树中每个节点的数据也可以包括该节点的子节点属性信息,该子节点属性信息可以通过设定标识来表示,例如一个节点存在子节点,那么可以将该子节点的子节点属性设置为h,另一个节点不存在子节点,那么可以将该子节点的子节点属性设置为n。
通过上述将树形结构数据渲染到页面上以及查找到待操作节点,那么也就可以获知该待操作节点的子节点属性信息。
S506,根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点。
在本步骤中,在获得待操作节点是否存在子节点的信息之后,分两种情况,一种是存在子节点,另一种是不存在子节点,以下就针对这两种情况进行说明。
可选的,在一种可能的实施方式中,若待操作节点存在至少一个子节点,则基于获取的子节点的属性信息,在待操作节点的下一层添加新的子节点。也就是说,该待操作节点存在子节点,那么可能存在一个或多个子节点,通常上述在获知节点存在子节点时,也可以获知存在几个子节点,一般各个子节点也都是按照顺序去排列的,所以这里在获知该待操作节点存在子节点以及存在几个子节点之后,就可以在之前的子节点后面添加新的子节点,并给该新的子节点设置相应的属性信息。示例地,假设待操作节点为0-0,其有两个子节点,分别为0-0-0和0-0-1,那么在给该待操作节点添加新的子节点时,就可以在0-0-1后面添加,新添加的子节点可以记为0-0-2。
在另一种可能的实施方式中,若待操作节点不存在子节点,则对待操作节点创建子节点属性,并基于创建的子节点属性,在待操作节点的下一层添加新的子节点。也就是说,该待操作节点不存在子节点,那么可以按照节点的设置顺序及设置方式,直接对该待操作节点创建新的子节点。示例地,假设待操作节点为1-1,其没有子节点,那么可以直接给该待操作节点创建子节点,并添加新的子节点,可以从1-1-0开始添加,第一个添加的子节点就记为1-1-0,后面的以此类推添加。
本实施例中,通过获取的待操作节点的子节点属性信息在待操作节点的下一层添加新的子节点,这样可以快速且准确地为待操作节点添加子节点,提升对节点操作的效率。进一步地,在待操作节点存在或不存在子节点时均可以根据实际情况去添加子节点,这样可以在各种情况下均实现为待操作节点添加子节点,同时避免在存在子节点时,不考虑存在的子节点而导致新添加的子节点覆盖原来的子节点的问题。
在另一个实施例中,如图6所示,提供了另一种节点的操作方法,在上述实施例的基础上,上述方法还可以包括以下步骤:
S602,获取待修改信息。
在本步骤中,在需要修改待操作节点的信息之前,可以预先设置好需要对待操作节点进行修改的信息,即待修改信息。
S604,根据上述待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息。
在本步骤中,在上述获得待操作节点的待修改信息以及原始对象信息之后,若待修改信息中包括原始对象信息中需要修改的一部分信息以及不需要修改的另一部分信息,那么可以将原始对象信息直接替换为待修改信息;若待修改信息只包含对原始对象信息进行修改的一部分信息,那么可以将原始对象信息中需要修改的信息替换为待修改信息,其他对象信息不变。总之,通过对原始对象信息进行修改,就可以获得待操作节点修改后的对象信息。
本实施例中,通过根据获得的待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息,这样可以快速准确地实现对待操作节点的对象信息进行修改,提升对待操作节点修改的效率。
在另一个实施例中,提供了另一种节点的操作方法,在上述实施例的基础上,上述方法还可以包括以下步骤A:
步骤A,根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除。
在本步骤中,在上述查找到待操作节点之后,也可以对该待操作节点进行删除,在删除时,可以结合该待操作节点的深度信息和预设阈值对其对象信息进行删除。具体删除时,可选的,如图7所示,可以包括以下步骤:
S702,判断上述深度信息是否大于预设阈值,得到第二判断结果。
其中,上述预设阈值可以根据实际情况设定,在本实施例中,可选的,上述预设阈值为2。
具体深度信息和预设阈值的判断过程,可以参见上述S402中的描述,这里不再赘述,总之可以获得判断结果,这里记为第二判断结果。
S704,根据上述第二判断结果对待操作节点的对象信息进行删除。
在本步骤中,在获得第二判断结果之后,就可以获知深度信息是否大于2。可选的,若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并删除待操作节点的对象信息。也就是说,若待操作节点的深度信息不大于2,那么说明待操作节点位于树形结构树的第一层的叶子节点,之后可以通过该待操作节点的深度信息,在第一层叶子节点中查找到得到该待操作节点的位置,获得该待操作节点的对象信息,并对该找到的对象信息进行删除。
若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点对应的父节点以及父节点的属性信息,并根据父节点的属性信息删除待操作节点的对象信息。也就是说,若待操作节点的深度信息大于2,则说明该待操作节点位于树形结构树的叶子节点的第二层或者之下的某一层,那么可以先通过遍历该待操作节点的深度信息数组,例如是遍历[0、0、1],获得有3个数,即该待操作节点在第二层叶子节点,那么就可以获知该待操作节点对应的父节点的属性信息为0-0,即该待操作节点的父节点为位于第一层的叶子节点,即树的第二层的节点,之后可以从该待操作节点的父节点所包含的子节点中找到该待操作节点,并通过该深度信息数组中的1,获得待操作节点在该父节点的第二个位置上,这样即可找到待操作节点,获得该待操作节点的对象信息,并对该找到的对象信息进行删除。
本实施例中,通过深度信息是否大于预设阈值的判断结果来确定待操作节点的对象信息,这样可以直观且快速地找到待操作节点并获得对象信息,以便对待操作节点的对象信息进行删除,这样可以在节省***内存的基础上进一步提升对待操作节点的对象信息进行删除的效率。进一步地,在深度信息大于2时,通过待操作节点的父节点对待操作节点的对象信息进行删除,这样可以准确地删除待操作节点的对象信息,避免误删除的问题。
示例地,上述实施例中提到了可以查询待操作节点,并在此基础上进行添加子节点、删除节点的对象信息、修改节点的对象信息等操作,以下就参见图8所示,给出初始结构树、新建/添加子节点、修改叶子节点名称以及删除子节点的示例图,其中的parent为父节点,leaf为子节点,parent0表示第一个1父节点,leaf0-0表示第一个父节点下的第一个子节点,leaf0-1表示第一个父节点下的第二个子节点,这里leaf0-0、leaf0-1对应的深度信息均为2;leaf0-0-0表示第一个父节点下的第一个子节点的第一个子节点,这里leaf0-0-0对应的深度信息为3,之后的leaf0-0-0-0、leaf0-0-0-0-0同理,对应的深度信息分别为4、5;parent1表示第一个2父节点,leaf1-0表示第二个父节点下的第一个子节点,leaf1-1表示第二个父节点下的第二个子节点,对应的深度信息与parent0的相对应。
应该理解的是,虽然图2-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种节点的操作装置,包括:获取模块10、深度信息确定模块11和对象信息确定模块12,其中:
获取模块10,用于获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;
深度信息确定模块11,用于根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;
对象信息确定模块12,用于根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
关于节点的操作装置的具体限定可以参见上文中对于节点的操作方法的限定,在此不再赘述。
在另一个实施例中,提供了另一种节点的操作装置,在上述实施例的基础上,上述深度信息确定模块11可以包括:
深度信息数组确定单元,用于根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组;
深度信息确定单元,用于根据上述深度信息数组,确定待操作节点在树形结构树中的深度信息。
可选的,上述深度信息数组确定单元,具体用于对待操作节点的属性信息进行切分,得到待操作节点的属性信息对应的深度信息数组。
可选的,上述对象信息确定模块12可以包括:
第一判断单元,用于判断上述深度信息是否满足预设条件,得到第一判断结果;
对象信息确定单元,用于根据上述第一判断结果确定待操作节点的对象信息。
可选的,上述预设条件为与预设阈值的关系,预设阈值为2,上述判断单元,具体用于在上述深度信息不大于2的情况下,确定待操作节点是位于树形结构树第一层的叶子节点,并确定待操作节点的对象信息;和/或,在上述深度信息大于2的情况下,确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点所在的层级,并根据上述所在的层级确定待操作节点的对象信息。
在另一个实施例中,提供了另一种节点的操作装置,在上述实施例的基础上,上述装置还可以包括:
子节点属性获取模块,用于获取待操作节点对应的子节点属性信息;上述子节点属性信息用于表征待操作节点是否存在子节点;
节点添加模块,用于根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点。
可选的,上述节点添加模块,具体用于在待操作节点存在至少一个子节点的情况下,基于获取的子节点的属性信息,在待操作节点的下一层添加新的子节点;在待操作节点不存在子节点的情况下,对待操作节点创建子节点属性,并基于创建的子节点属性,在待操作节点的下一层添加新的子节点。
在另一个实施例中,提供了另一种节点的操作装置,在上述实施例的基础上,上述装置还可以包括:
修改信息获取模块,用于获取待修改信息;
对象信息修改模块,用于根据上述待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息。
在另一个实施例中,提供了另一种节点的操作装置,在上述实施例的基础上,上述装置还可以包括:
删除模块,用于根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除。
可选的,上述删除模块,可以包括:
第二判断单元,用于判断上述深度信息是否大于预设阈值,得到第二判断结果;
删除单元,用于根据上述第二判断结果对待操作节点的对象信息进行删除。
可选的,上述预设阈值为2,上述删除单元,具体用于在上述深度信息不大于2的情况下,确定待操作节点是位于树形结构树第一层的叶子节点,并删除待操作节点的对象信息;在上述深度信息大于2的情况下,确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点对应的父节点以及父节点的属性信息,并根据父节点的属性信息删除待操作节点的对象信息。
关于节点的操作装置的具体限定可以参见上文中对于节点的操作方法的限定,在此不再赘述。
上述节点的操作装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组;根据上述深度信息数组,确定待操作节点在树形结构树中的深度信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对待操作节点的属性信息进行切分,得到待操作节点的属性信息对应的深度信息数组。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
判断上述深度信息是否满足预设条件,得到第一判断结果;根据上述第一判断结果确定待操作节点的对象信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并确定待操作节点的对象信息;和/或,若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点所在的层级,并根据上述所在的层级确定待操作节点的对象信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取待操作节点对应的子节点属性信息;上述子节点属性信息用于表征待操作节点是否存在子节点;根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若待操作节点存在至少一个子节点,则基于获取的子节点的属性信息,在待操作节点的下一层添加新的子节点;若待操作节点不存在子节点,则对待操作节点创建子节点属性,并基于创建的子节点属性,在待操作节点的下一层添加新的子节点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取待修改信息;根据上述待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
判断上述深度信息是否大于预设阈值,得到第二判断结果;根据上述第二判断结果对待操作节点的对象信息进行删除。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并删除待操作节点的对象信息;若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点对应的父节点以及父节点的属性信息,并根据父节点的属性信息删除待操作节点的对象信息。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待操作节点及该待操作节点的属性信息;上述属性信息用于表征待操作节点在树形结构树中的位置信息;根据待操作节点的属性信息,确定待操作节点在树形结构树中的深度信息;根据上述深度信息,确定待操作节点的对象信息;上述对象信息用于表征待操作节点的身份信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据待操作节点的属性信息,得到待操作节点的属性信息对应的深度信息数组;根据上述深度信息数组,确定待操作节点在树形结构树中的深度信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对待操作节点的属性信息进行切分,得到待操作节点的属性信息对应的深度信息数组。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
判断上述深度信息是否满足预设条件,得到第一判断结果;根据上述第一判断结果确定待操作节点的对象信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并确定待操作节点的对象信息;和/或,若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点所在的层级,并根据上述所在的层级确定待操作节点的对象信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取待操作节点对应的子节点属性信息;上述子节点属性信息用于表征待操作节点是否存在子节点;根据待操作节点对应的子节点属性信息,在待操作节点的下一层添加新的子节点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若待操作节点存在至少一个子节点,则基于获取的子节点的属性信息,在待操作节点的下一层添加新的子节点;若待操作节点不存在子节点,则对待操作节点创建子节点属性,并基于创建的子节点属性,在待操作节点的下一层添加新的子节点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取待修改信息;根据上述待修改信息对待操作节点的对象信息进行修改,获得修改后的对象信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据上述深度信息和/或预设阈值,对待操作节点的对象信息进行删除。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
判断上述深度信息是否大于预设阈值,得到第二判断结果;根据上述第二判断结果对待操作节点的对象信息进行删除。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若上述深度信息不大于2,则确定待操作节点是位于树形结构树第一层的叶子节点,并删除待操作节点的对象信息;若上述深度信息大于2,则确定待操作节点非位于树形结构树第一层的叶子节点,遍历上述深度信息数组,获得待操作节点对应的父节点以及父节点的属性信息,并根据父节点的属性信息删除待操作节点的对象信息。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种节点的操作方法,其特征在于,所述方法包括:
获取待操作节点的属性信息;
根据所述待操作节点的属性信息,确定所述待操作节点在树形结构树中的深度信息;
根据所述深度信息,确定所述待操作节点的对象信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述待操作节点的属性信息,确定所述待操作节点在所述树形结构树中的深度信息,包括:
根据所述待操作节点的属性信息,得到所述待操作节点的属性信息对应的深度信息数组;
根据所述深度信息数组,确定所述待操作节点在所述树形结构树中的深度信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述深度信息,确定所述待操作节点的对象信息,包括:
判断所述深度信息是否满足预设条件,得到第一判断结果;
根据所述第一判断结果确定所述待操作节点的对象信息。
4.根据权利要求3所述的方法,其特征在于,所述预设条件为与预设阈值的关系,所述根据所述第一判断结果确定所述待操作节点的对象信息,包括:
若所述深度信息不大于2,则确定所述待操作节点是位于所述树形结构树第一层的叶子节点,并确定所述待操作节点的对象信息;和/或,
若所述深度信息大于2,遍历所述深度信息数组,获得所述待操作节点所在的层级,并根据所述所在的层级确定所述待操作节点的对象信息。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述方法还包括:
获取所述待操作节点对应的子节点属性信息;所述子节点属性信息用于表征所述待操作节点是否存在子节点;
根据所述待操作节点对应的子节点属性信息,在所述待操作节点的下一层添加新的子节点。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述方法还包括:
对所述待操作节点的对象信息进行修改;或,
根据所述深度信息和/或预设阈值,对所述待操作节点的对象信息进行删除。
7.根据权利要求6所述的方法,其特征在于,所述根据所述深度信息和/或预设阈值,对所述待操作节点的对象信息进行删除,包括:
判断所述深度信息与所述预设阈值的关系,得到第二判断结果;
根据所述第二判断结果对所述待操作节点的对象信息进行删除。
8.一种节点的操作装置,其特征在于,所述装置包括:
获取模块,用于获取待操作节点的属性信息;
深度信息确定模块,用于根据所述待操作节点的属性信息,确定所述待操作节点在所述树形结构树中的深度信息;
对象信息确定模块,用于根据所述深度信息,确定所述待操作节点的对象信息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558073.2A CN113282799B (zh) | 2021-05-21 | 2021-05-21 | 节点的操作方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558073.2A CN113282799B (zh) | 2021-05-21 | 2021-05-21 | 节点的操作方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113282799A true CN113282799A (zh) | 2021-08-20 |
CN113282799B CN113282799B (zh) | 2023-06-27 |
Family
ID=77280746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110558073.2A Active CN113282799B (zh) | 2021-05-21 | 2021-05-21 | 节点的操作方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113282799B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656533A (zh) * | 2021-08-23 | 2021-11-16 | 北京百度网讯科技有限公司 | 一种树形控件处理方法、装置及电子设备 |
CN114491164A (zh) * | 2022-01-17 | 2022-05-13 | 广州市玄武无线科技股份有限公司 | 一种树形数据处理方法及*** |
CN114840293A (zh) * | 2022-04-22 | 2022-08-02 | 平安国际智慧城市科技股份有限公司 | 树形控件的渲染方法、装置、计算机设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102867059A (zh) * | 2012-09-19 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | 一种树形结构中数据的处理方法和*** |
CN108874393A (zh) * | 2018-06-06 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 渲染方法、装置、存储介质和计算机设备 |
CN111274242A (zh) * | 2020-01-07 | 2020-06-12 | 南京天溯自动化控制***有限公司 | 用于医院后勤运维的树结构的数据查找方法、装置 |
-
2021
- 2021-05-21 CN CN202110558073.2A patent/CN113282799B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102867059A (zh) * | 2012-09-19 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | 一种树形结构中数据的处理方法和*** |
CN108874393A (zh) * | 2018-06-06 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 渲染方法、装置、存储介质和计算机设备 |
CN111274242A (zh) * | 2020-01-07 | 2020-06-12 | 南京天溯自动化控制***有限公司 | 用于医院后勤运维的树结构的数据查找方法、装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656533A (zh) * | 2021-08-23 | 2021-11-16 | 北京百度网讯科技有限公司 | 一种树形控件处理方法、装置及电子设备 |
CN114491164A (zh) * | 2022-01-17 | 2022-05-13 | 广州市玄武无线科技股份有限公司 | 一种树形数据处理方法及*** |
CN114491164B (zh) * | 2022-01-17 | 2022-12-09 | 广州市玄武无线科技股份有限公司 | 一种树形数据处理方法及*** |
CN114840293A (zh) * | 2022-04-22 | 2022-08-02 | 平安国际智慧城市科技股份有限公司 | 树形控件的渲染方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113282799B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113282799B (zh) | 节点的操作方法、装置、计算机设备和存储介质 | |
CN110209652B (zh) | 数据表迁移方法、装置、计算机设备和存储介质 | |
CN112019820B (zh) | 界面生成方法和装置 | |
CN109241223B (zh) | 行为行踪识别方法及*** | |
CN106462430A (zh) | 应用升级包获取方法及装置 | |
CN110321284B (zh) | 测试数据录入方法、装置、计算机设备和存储介质 | |
CN111581271A (zh) | 接口参数确定方法、装置、计算机设备和存储介质 | |
JP2018116496A (ja) | 差異検出装置及びプログラム | |
CN113688288A (zh) | 数据关联分析方法、装置、计算机设备和存储介质 | |
CN111008022B (zh) | 关系图生成方法、装置、计算机设备和存储介质 | |
CN114625696A (zh) | 文件恢复方法、装置、电子设备及存储介质 | |
CN111176901B (zh) | 一种hdfs删除文件恢复方法、终端设备及存储介质 | |
CN116226681B (zh) | 一种文本相似性判定方法、装置、计算机设备和存储介质 | |
CN112069236A (zh) | 关联文件的展示方法、装置、设备及存储介质 | |
JP2019101889A (ja) | テスト実行装置及びプログラム | |
CN116933316A (zh) | 智能终端应用敏感行为与隐私政策一致性分析方法及装置 | |
CN113391916A (zh) | 组织架构数据处理方法、装置、计算机设备和存储介质 | |
CN111736848B (zh) | 包冲突定位方法、装置、电子设备及可读存储介质 | |
CN114356404A (zh) | 接口文档生成方法、***和计算机可读存储介质 | |
JP7006769B2 (ja) | 検索文活用装置および検索文活用方法 | |
CN112417259A (zh) | 媒体资源的处理方法、装置、设备及存储介质 | |
CN109213490A (zh) | 一种程序处理方法、装置以及相关设备 | |
CN104808985B (zh) | 应用程序中对象的管理方法及装置 | |
CN112445790B (zh) | 一种报表数据存储方法、装置、设备及介质 | |
CN117874038A (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 |