【技术实现步骤摘要】
基于邻接表的文件查询方法、装置及计算机设备
[0001]本申请涉及软件开发
,尤其涉及一种基于邻接表的文件查询方法、装置及计算机设备。
技术介绍
[0002]树形结构是一种层次的嵌套结构,一个树形结构的外层和内层有相似的结构,所以这种结构多可以递归的表示。经典数据结构中的各种树状图是一种典型的树形结构,树形结构的数据元素之间存在着“一对多”的树形关系的数据结构,是一类重要的非线性数据结构。在树形结构中,树根节点没有前驱节点,其余每个节点有且只有一个前驱节点,叶子节点没有后续节点,其余每个节点的后续节点数可以是一个也可以是多个。
[0003]目前市面上主要使用邻接表作为树形结构存储模型,对于邻接表存储设计的网盘业务来说,当用户在前端传入一个文件完整路径后,需要根据文件完整路径来快速定位对应的文件或文件夹,并返回当前文件夹下的文件列表,但当文件完整路径中的路径层级越多时,其查询定位效率也越低,耗时也越长。
技术实现思路
[0004]本申请的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中当文件完整路径中的路径层级越多时,其查询定位效率也越低,耗时也越长的技术缺陷。
[0005]本申请提供了一种基于邻接表的文件查询方法,所述方法包括:
[0006]获取待查询的目标文件对应的文件完整路径,并确定所述文件完整路径的路径层级;
[0007]若所述路径层级不大于预设层级阈值,则按照所述文件完整路径中各层路径之间的路径顺序依次进行查询后得到目标文件;
[0008]若 ...
【技术保护点】
【技术特征摘要】
1.一种基于邻接表的文件查询方法,其特征在于,所述方法包括:获取待查询的目标文件对应的文件完整路径,并确定所述文件完整路径的路径层级;若所述路径层级不大于预设层级阈值,则按照所述文件完整路径中各层路径之间的路径顺序依次进行查询后得到目标文件;若所述路径层级大于所述预设层级阈值,则将所述文件完整路径拆分为第一子路径和第二子路径,并按照预设的文件查询规则分别对所述第一子路径和所述第二子路径进行查询,得到所述第一子路径下的第一文件对象和所述第二子路径下的文件对象列表;从所述文件对象列表中查找与所述第一文件对象对应的第二文件对象,并根据所述第二文件对象从数据库中获取目标文件。2.根据权利要求1所述的基于邻接表的文件查询方法,其特征在于,所述按照所述文件完整路径中各层路径之间的路径顺序依次进行查询后得到目标文件,包括:按照所述文件完整路径中各层路径之间的路径顺序,从所述文件完整路径中获取当前路径的路径名称以及从上一层路径下查询到的文件对象中获取当前路径的父文件ID,其中,所述文件完整路径中的首层路径的父文件ID为空;基于所述当前路径的路径名称和父文件ID对数据库进行查询操作,并得到所述数据库返回的所述当前路径下的文件对象;判断所述当前路径是否为所述文件完整路径中的最后一层路径;若是,则将所述当前路径下的文件对象作为目标文件;否则,将所述当前路径的下一层路径替换为当前路径后,返回执行从所述文件完整路径中获取当前路径的路径名称以及从上一层路径下查询到的文件对象中获取当前路径的父文件ID的步骤。3.根据权利要求2所述的基于邻接表的文件查询方法,其特征在于,所述判断所述当前路径是否为所述文件完整路径中的最后一层路径之前,还包括:判断所述当前路径的文件对象是否为空;若为空,则停止查询操作;若不为空,则执行判断所述当前路径是否为所述文件完整路径中的最后一层路径的步骤。4.根据权利要求1所述的基于邻接表的文件查询方法,其特征在于,所述第一子路径包含所述文件完整路径中的首层路径,所述第二子路径包含所述文件完整路径中的最后一层路径;所述按照预设的文件查询规则分别对所述第一子路径和所述第二子路径进行查询,得到所述第一子路径下的第一文件对象和所述第二子路径下的文件对象列表,包括:以所述文件完整路径中的首层路径为所述第一子路径中的首层路径,按照所述第一子路径中各层路径之间的路径顺序依次进行查询后得到所述第一子路径下的第一文件对象;以所述文件完整路径中的最后一层路径为所述第二子路径中的首层路径,按照所述第二子路径中各层路径之间的路径顺序从最后一层路径依次往上进行查询后得到所述第二子路径下的文件对象列表。5.根据权利要求4所述的基于邻接表的文件查询方法,其特征在于,所述按照所述第一子路径中各层路径之间的路径顺序依次进行查询后得到所述第一子路径下的第一文件对
象,包括:按照所述第一子路径中各层路径之间的路径顺序,从所述第一子路径中获取当前路径的路径名称以及从上一层路径下查询到的文件对象中获取当前路径的父文件ID,其中,所述第一子路径中的首层路径的父文件ID为空;基于所述当前路径的路径名称和父文件ID对数据库进行查询操作,并得到所述数据库返回的所述当前路径下的文件对象;判断所述当前路径是否为所述第一子路径中的最后一层路径;若是,则将所述当前路径下的文件对象作为所述第一子路径下的第一文件对...
【专利技术属性】
技术研发人员:郭磊,王刚,丘凌,陈天明,曹航瑞,任伟权,白云,
申请(专利权)人:天翼数字生活科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。