页面跳转方法、装置、设备及存储介质制造方法及图纸

技术编号:37964043 阅读:9 留言:0更新日期:2023-06-30 09:39
本公开提供了一种页面跳转方法、装置、设备及存储介质,涉及计算机技术领域中的互联网技术、应用程序处理、页面显示、数据存储等技术领域。其中,页面跳转方法包括:确定待跳转页面的页码;根据页码,确定待跳转页面的起始节点在跳表中的逻辑序号,跳表包括多个节点,多个节点中至少一个节点为待跳转页面对应的节点,节点中的数据包含页面数据和跳转辅助值,节点包含的跳转辅助值用于反映跳表中位于节点之前的节点数量;根据逻辑序号和节点包含的跳转辅助值,在跳表中查找起始节点;从起始节点中获取待跳转页面的页面数据;根据待跳转页面的页面数据,跳转至待跳转页面。从而,利用跳表快速找到页面对应的节点,提高页面跳转效率。提高页面跳转效率。提高页面跳转效率。

【技术实现步骤摘要】
页面跳转方法、装置、设备及存储介质


[0001]本公开涉及计算机
中的互联网技术、应用程序处理、页面显示、数据存储等
,尤其涉及一种页面跳转方法、装置、设备及存储介质。

技术介绍

[0002]在网页或者应用程序页面上,用户通过翻页可浏览到更多的页面数据。
[0003]相关技术中,利用数据库中的表格存储页面数据,在翻页时,通过数据库语句,在数据库的表格中从所有页面数据的开头开始数,比如,从第一页的第一条数据开始数,一直数到待跳转页面的页面数据所在的位置。
[0004]然而,在页面较多的情况下,上述方式的页面跳转效率较低。

技术实现思路

[0005]本公开提供了一种用于提高页面跳转效率的页面跳转方法、装置、设备及存储介质。
[0006]根据本公开的第一方面,提供了一种页面跳转方法,包括:
[0007]确定待跳转页面的页码;
[0008]根据所述页码,确定所述待跳转页面的起始节点在跳表中的逻辑序号,所述跳表包含多个节点,所述多个节点中至少一个节点为所述待跳转页面对应的节点,所述节点中的数据包含页面数据和跳转辅助值,所述节点包含的跳转辅助值用于反映所述跳表中位于所述节点之前的节点数量;
[0009]根据所述逻辑序号和所述节点包含的跳转辅助值,在所述跳表中查找所述起始节点;
[0010]从所述起始节点中获取所述待跳转页面的页面数据;
[0011]根据所述待跳转页面的页面数据,跳转至所述待跳转页面。
[0012]根据本公开的第二方面,提供了一种页面跳转装置,包括:
[0013]页码确定单元,用于确定待跳转页面的页码;
[0014]序号确定单元,用于根据所述页码,确定所述待跳转页面的起始节点在跳表中的逻辑序号,所述跳表包含多个节点,所述多个节点中至少一个节点为所述待跳转页面对应的节点,所述节点中的数据包含页面数据和跳转辅助值,所述节点包含的跳转辅助值用于反映所述跳表中位于所述节点之前的节点数量;
[0015]节点查找单元,用于根据所述逻辑序号和所述节点包含的跳转辅助值,在所述跳表中查找所述起始节点;
[0016]数据获取单元,用于从所述起始节点中获取所述待跳转页面的页面数据;
[0017]跳转单元,用于根据所述待跳转页面的页面数据,跳转至所述待跳转页面。
[0018]根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器
执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的页面跳转方法。
[0019]根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面所述的页面跳转方法。
[0020]根据本公开的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面所述的页面跳转方法。
[0021]根据本公开提供的技术方案,在跳表中的节点存储页面数据,将在多个页面中待跳转页面的查找简化为跳表中待跳转页面的起始节点的查找;基于待跳转页面的页码,可确定待跳转页面的起始节点在跳表中的逻辑序号,使得起始节点的查找进一步简化为相应逻辑序号的节点的查找,从而通过不断简化问题的方式提高了页面查找效率。在跳表中,可利用节点中的翻页辅助值,查找相应逻辑序号的节点,由于翻页辅助值反映了跳表中位于节点之前的节点数量,跳表中位于节点之前的节点数量与跳表中节点的逻辑顺序有关,基于翻页辅助值提高了节点查找效率,进而提高了页面查找效率。
[0022]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0023]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0024]图1为本公开实施例适用的一种应用场景的示意图;
[0025]图2为根据本公开实施例提供的页面跳转方法的流程示意图一;
[0026]图3为本公开实施例提供的跳表的结构示例图一;
[0027]图4为根据本公开实施例提供的页面跳转方法的流程示意图二;
[0028]图5为根据本公开实施例提供的页面跳转方法的流程示意图三;
[0029]图6为根据本公开实施例提供的页面跳转方法的流程示意图四;
[0030]图7为本公开实施例提供的跳表的结构示例图二;
[0031]图8为本公开实施例提供的页面跳转装置的结构示意图一;
[0032]图9为可以用来实施本公开的实施例的示例电子设备900的示意性框图。
具体实施方式
[0033]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0034]用户可对网页或者应用程序的页面进行翻页操作。响应于用户的翻页操作,终端或者服务器需要在多个页面中找到用户需要翻到的目标页面,跳转至显示目标页面,即翻页到目标页面。
[0035]大翻页场景是指在大量页面中进行翻页的场景,比如,网络论坛的翻页场景。大翻
页场景由于页面数量很多,翻页效率会相应下降。
[0036]相关技术中,有如下翻页方式:
[0037]第一种方式是:使用关系型数据库管理系统(例如mysql)存储列表数据,列表数据中包括多个页面的页面数据,列表数据的数据存储结构为b+树。基于b+树实现翻页的时间复杂度为O(n),n表示页面数量。在大翻页场景中,n增大到一定程度时,翻页效率会很慢,无法及时响应用户需求。
[0038]第二种方式是:使用远程字典服务(Remote Dictionary Server,RDS)存储列表数据,列表数据中包括多个页面的页面数据;在RDS中使用有序列表Zset实现翻页。然而,该存储方式是全内存存储的,容易出现内存瓶颈,不适用于大翻页场景,而且Zset只支持存储单一状态的列表数据,在页面上有多状态的页面数据的情况下,无法利用Zset实现翻页。以论坛为例,在论坛页面上可以存在已发布的帖子和用户自身保存后未发布的帖子,已发布和未发布是两种不同的状态,Zset无法用于该场景下的翻页。
[0039]在第一种方式中,为解决翻页效率问题,可采用如下方式:
[0040]解决方案1:使用瀑布流方式,每次传入第一页的页面数据ID,基于第一页的页面数据ID取第一页进行显示,之后响应于用户的下本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种页面跳转方法,包括:确定待跳转页面的页码;根据所述页码,确定所述待跳转页面的起始节点在跳表中的逻辑序号,所述跳表包含多个节点,所述多个节点中至少一个节点为所述待跳转页面对应的节点,所述节点中的数据包含页面数据和跳转辅助值,所述节点包含的跳转辅助值用于反映所述跳表中位于所述节点之前的节点数量;根据所述逻辑序号和所述节点包含的跳转辅助值,在所述跳表中查找所述起始节点;从所述起始节点中获取所述待跳转页面的页面数据;根据所述待跳转页面的页面数据,跳转至所述待跳转页面。2.根据权利要求1所述的页面跳转方法,其中,所述根据所述逻辑序号和所述节点包含的跳转辅助值,在所述跳表中查找所述起始节点,包括:从所述跳表的第一个节点的最高层开始,比较所述跳表中的指针指向的节点包含的跳转辅助值和所述逻辑序号,得到比较结果,所述比较结果反映所述指针指向的节点与所述起始节点的关系;如果所述比较结果反映所述指针指向的节点为所述起始节点,则确定查找到所述起始节点,否则根据比较结果调整所述跳表的指针的指向,直至在所述跳表中查找到所述起始节点。3.根据权利要求2所述的页面跳转方法,其中,所述根据比较结果调整所述跳表的指针指向,包括:如果所述比较结果反映所述起始节点位于所述指针指向的节点之后,则调整所述指针指向具有同层的下一节点;和/或,如果所述比较结果反映所述起始节点位于所述指针指向的节点之前,则将所述指针回退至具有同层的上一节点,并将所述指针下移一层后再指向具有同层的下一节点。4.根据权利要求2所述的页面跳转方法,其中,所述跳表中节点包含的跳转辅助值为所述跳表中节点的左下侧节点的数量加1,节点的左下侧节点为位于节点之前且层数小于节点的节点;所述比较所述指针指向的节点包含的跳转辅助值和所述逻辑序号,包括:将所述指针指向的节点包含的跳转辅助值与所述逻辑序号减一的差值进行比较,得到所述比较结果;其中,如果所述比较结果为所述指针指向的节点包含的跳转辅助值等于所述差值,则所述比较结果反映所述指针指向的节点为所述起始节点;如果所述比较结果为所述指针指向的节点包含的跳转辅助值小于所述差值,则所述比较结果反映所述起始节点位于所述指针指向的节点之后;否则,所述比较结果反映所述起始节点位于所述指针指向的节点之前。5.根据权利要求1至4中任一项所述的页面跳转方法,其中,所述根据所述页码,确定所述待跳转页面的起始节点在跳表中的逻辑序号,包括:根据所述页码和单个页面在所述跳表中占用的节点数量,确定所述逻辑序号。6.根据权利要求1所述的页面跳转方法,其中,所述跳表的个数为多个,所述根据所述逻辑序号和所述跳表中节点对应的跳转辅助值,在所述跳表中查找起始节点,包括:根据多个跳表中节点包含的跳转辅助值及所述逻辑序号,调整所述多个跳表中至少一个跳表的指针,以缩小所述起始节点的查找范围,直至所述起始节点的查找满足结束条件;
根据所述查找范围,在所述跳表中确定所述起始节点。7.根据权利要求6所述的页面跳转方法,其中,当所述跳表的个数为两个时,所述两个跳表包括第一跳表和第二跳表,所述第一跳表用于存储第一状态的页面数据,所述第二跳表用于存储第二状态的页面数据;所述根据所述多个跳表中节点包含的跳转辅助值及所述逻辑序号,调整所述多个跳表中至少一个跳表的指针,以缩小所述起始节点的查找范围,直至所述起始节点的查找满足结束条件,包括:根据所述第一跳表中节点包含的跳转辅助值、所述第二跳表中节点包含的跳转辅助值以及所述逻辑序号,在所述第一跳表中移动第一指针以及在所述第二跳表中移动第二指针,以缩小所述查找范围,直至所述起始节点的查找满足结束条件。8.根据权利要求7所述的页面跳转方法,其中,所述根据所述第一跳表中节点包含的跳转辅助值、所述第二跳表中节点包含的跳转辅助值以及所述逻辑序号,在所述第一跳表中移动第一指针和/或在所述第二跳表中移动第二指针,以缩小所述查找范围,直至所述起始节点的查找满足结束条件,包括:针对各个跳表,将跳表中的指针指向跳表中第一个节点的最高层,再在同一层将指针移动至下一个节点;根据所述第一指针指向的节点、所述第一跳表中节点包含的跳转辅助值、所述第二指针指向的节点、所述第二跳表中节点包含的跳转辅助值和所述逻辑序号,移动所述第一指针和移动所述第二指针,确定所述查找范围;如果所述起始节点的查找满足结束条件,则停止查找所述起始节点,否则继续在所述第一跳表中移动所述第一指针和/或在所述第二跳表中移动所述第二指针,以缩小所述查找范围。9.根据权利要求8所述的页面跳转方法,其中,所述根据所述第一指针指向的节点、所述第一跳表中节点包含的跳转辅助值、所述第二指针指向的节点、所述第二跳表中节点包含的跳转辅助值和所述逻辑序号,移动所述第一指针和移动所述第二指针,确定所述查找范围,包括:根据所述第一指针指向的节点、所述第一跳表中节点包含的跳转辅助值、所述第二指针指向的节点、所述第二跳表中节点包含的跳转辅助值和所述逻辑序号,确定目标位置关系;根据所述目标位置关系,移动所述第一指针和/或所述第二指针,在所述第一跳表和/或所述第二跳表中确定所述查找范围的边界节点;其中,所述目标位置关系包括所述第一指针指向的节点与所述起始节点的位置关系和/或所述第二指针指向的节点与所述起始节点的位置关系,所述边界节点包括所述第一指针指向的节点、所述第二指针指向的节点、所述起始节点在所述第一跳表中的第一上界节点和所述起始节点在所述跳表中的第二上界节点。10.根据权利要求9所述的页面跳转方法,其中,所述跳表中节点包含的跳转辅助值是根据节点的左下侧节点的数量确定的,节点的左下侧节点为位于节点之前且层数小于节点的节点;所述根据所述第一指针指向的节点、所述第一跳表中节点包含的跳转辅助值、所述第
二指针指向的节点、所述第二跳表中节点包含的跳转辅助值和所述逻辑序号,确定目标位置关系,包括:根据所述第一指针指向的节点包含的跳转辅助值和位于所述第一指针在当前层的移动轨迹上的节点包含的跳转辅助值,确定第一节点数量,所述第一节点数量反映所述第一跳表中所述第一指针指向的节点前面的节点数量;根据所述第二指针指向的节点包含的跳转辅助值和位于所述第二指针在当前层的移动轨迹上的节点包含的跳转辅助值,确定第二节点数量,所述第二节点数量反映所述第二跳表中所述第二指针指向的节点前面的节点数量;根据所述第一节点数量、所述第二节点数量和所述逻辑序号,确定所述目标...

【专利技术属性】
技术研发人员:李云飞
申请(专利权)人:百度时代网络技术北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1