CN109543027A - 分页数据的获取方法及装置、设备及存储介质 - Google Patents

分页数据的获取方法及装置、设备及存储介质 Download PDF

Info

Publication number
CN109543027A
CN109543027A CN201811407787.8A CN201811407787A CN109543027A CN 109543027 A CN109543027 A CN 109543027A CN 201811407787 A CN201811407787 A CN 201811407787A CN 109543027 A CN109543027 A CN 109543027A
Authority
CN
China
Prior art keywords
checked
list
list items
numerical value
paging
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
CN201811407787.8A
Other languages
English (en)
Other versions
CN109543027B (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.)
SUZHOU QINYOU NETWORK TECHNOLOGY Co.,Ltd.
Original Assignee
Suzhou Funny Friends Network 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 Suzhou Funny Friends Network Technology Co Ltd filed Critical Suzhou Funny Friends Network Technology Co Ltd
Priority to CN201811407787.8A priority Critical patent/CN109543027B/zh
Publication of CN109543027A publication Critical patent/CN109543027A/zh
Application granted granted Critical
Publication of CN109543027B publication Critical patent/CN109543027B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种分页数据的获取方法及装置、设备及存储介质。所述方法包括:获取待查询参数的目标查询数值及分页数据对应的分页方向;通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值匹配的列表项;如果在待查询列表中不存在所包括的待查询参数的数值与目标查询数值匹配的列表项,则根据通过二分法在待查询列表中查询时最后查询的两个列表项及分页方向确定分页数据。本发明实施例的技术方案解决了现有技术中当通过二分法获取不到分页数据起始项时,则无法准确获取所需分页数据的技术缺陷,通过改良传统的二分查找法,在不影响查询效率的情况下实现了在数据列表出现异常时也可准确、快速以简便地获取所需分页数据。

Description

分页数据的获取方法及装置、设备及存储介质
技术领域
本发明实施例涉及分页数据获取的技术领域,尤其涉及一种分页数据的获取方法及装置、设备及存储介质。
背景技术
现如今人与人之间的交流方式已不仅限于电话和短信,而是越来越多地通过社交类软件与亲人、朋友及同事等人进行交流。
用户在使用社交类软件时,时常会有翻看之前的聊天记录的需求。现有技术中一般是通过二分法按照用户选取的查找条件,在聊天记录对应的数据存储列表中查找所需聊天记录。
发明人在实现本发明的过程中,发现现有技术存在如下缺陷:当数据存储列表中没有与用户所选取的查找条件匹配的列表项时,则无法准确获取用户所需的聊天记录。
发明内容
有鉴于此,本发明实施例提供了一种分页数据的获取方法及装置、设备及存储介质,以优化现有的分页数据获取方法,使得在数据列表出现异常时,也可以准确获取分页数据。
在第一方面,本发明实施例提供了一种分页数据的获取方法,包括:
获取待查询参数的目标查询数值,以及分页数据对应的分页方向;
通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;
如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
在上述方法中,可选的是,所述分页方向具体为负向分页,或正向分页。
在上述方法中,可选的是,所述待查询列表中列表项的排列顺序为按照所述待查询参数的降序进行排列;所述待查询列表中的列表项的列表编号依据所述列表项从前至后的排列顺序递增;
相应地,所述根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据,包括:
获取通过所述二分法在所述待查询列表中进行查询时,最后查询的两个列表项各自的列表编号;
如果所述分页方向为负向分页,则选取所述最后查询的两个列表项中列表编号较小者作为查询起始项,并从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,得到所述分页数据;
如果所述分页方向为正向分页,则选取所述最后查询的两个列表项中列表编号较大者作为查询起始项,从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,得到所述分页数据。
在上述方法中,可选的是,所述如果所述分页方向为负向分页,则选取所述最后查询的两个列表项中列表编号较小者作为查询起始项,从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,得到所述分页数据,包括:
如果所述分页方向为负向分页,则将列表编号比所述最后查询的两个列表项的两个列表编号中的较小者大设定整数值的列表项作为遍历起始项;
在所述待查询列表中从所述遍历起始项起,按照所述列表编号减小的方向遍历每一个列表项,直至查找到所包括的所述待查询参数的数值大于所述目标查询数值的列表项,并将该列表项作为查询起始项;
在所述待查询列表中从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,并将所获取的所有列表项按照与获取顺序相反的顺序进行排列,得到所述分页数据。
在上述方法中,可选的是,所述如果所述分页方向为正向分页,则选取所述最后查询到的两个列表项中列表编号较大者作为查询起始项,从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,得到所述分页数据,包括:
如果所述分页方向为正向分页,则将列表编号比所述最后查询的两个列表项的两个列表编号中的较大者小设定整数值的列表项作为遍历起始项;
在所述待查询列表中从所述遍历起始项起,按照所述列表编号增加的方向遍历每一个列表项,直至查找到所包括的所述待查询参数的数值小于所述目标查询数值的列表项,并将该列表项作为查询起始项;
在所述待查询列表中从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,并将所获取的所有列表项按照获取的顺序进行排列,得到所述分页数据。
在上述方法中,可选的是,在所述通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项之前,还包括:
判断所述目标查询数值是否小于所述待查询列表中各列表项包括的所述待查询参数的数值中的最大值,且小于所述待查询列表中各列表项包括的所述待查询参数的数值中的最小值;
若是,则执行所述通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项的操作。
在上述方法中,可选的是,所述待查询参数为所述待查询列表中的列表项的生成时间。
在第二方面,本发明实施例提供了一种分页数据的获取装置,包括:
目标查询数值获取模块,用于获取待查询参数的目标查询数值,以及分页数据对应的分页方向;
查找模块,用于通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;
分页数据确定模块,用于如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
在第三方面,本发明实施例提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所述的分页数据的获取方法。
在第四方面,本发明实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明任意实施例所述的分页数据的获取方法。
本发明实施例提供了一种分页数据的获取方法及装置、设备及存储介质,通过当不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项时,根据通过二分法在待查询列表中进行查询时最后查询的两个列表项及分页方向确定分页数据,解决了现有技术中当通过二分法获取不到分页数据起始项时,则无法准确获取所需分页数据的技术缺陷,通过改良传统的二分查找法,在不影响查询效率的情况下,实现了在数据列表出现异常时,也可以准确、快速以简便地获取所需分页数据。
附图说明
图1是本发明实施例一提供的一种分页数据的获取方法的流程图;
图2是本发明实施例二提供的一种分页数据的获取方法的流程图;
图3是本发明实施例三提供的一种分页数据的获取方法的流程图;
图4是本发明实施例四提供的一种分页数据的获取装置的结构图;
图5是本发明实施例五提供的一种设备的结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一提供的一种分页数据的获取方法的流程图,本实施例的方法可以由分页数据的获取装置来执行,该装置可通过硬件和/或软件的方式实现,并一般可集成于具有数据计算能力的设备中,例如服务器、终端等。本实施例的方法具体包括:
S101、获取待查询参数的目标查询数值,以及分页数据对应的分页方向。
可以理解的是,对于消息流类的数据一般是以数据列表的形式进行存储的,并且在显示时是以分页的方式进行显示的,用户可以通过点击具有翻页功能的控件查看数据。一般来说,在用户要查看某条数据及其之后或之前的数据时,首先会通过常规的二分法在数据列表中查找到该某条数据,然后再获取该某条数据之后或之前的设定数量(一页中可显示数据的数量)的数据进行分页数据显示。
在本实施例中,步骤101至步骤104就是通过常规的二分法在待查询列表中查找所包括的待查询参数的数值为目标查询数值的那条数据及其对应的分页数据的过程。
在本实施例中,待查询参数具体是指可用于唯一标识待查询列表中的一条数据的属性参数,典型的可以是该条数据的生成时间等。其中,待查询列表具体是指以表格形式对每一条数据进行存储后形成的列表。
在本实施例中,目标查询数值具体是指分页数据的起始项(即待查询列表中的一条数据)所包括的待查询参数的数值,或所包括的与待查询参数匹配的数值。分页数据具体是指将所包括的待查询参数的数值为目标查询数值的数据及其之前或之后的数据,按照分页显示的方式进行显示时形成的每一页数据。
在本实施例中,分页方向具体可以是正向分页,或负向分页。其中,负向份分页具体是指分页显示的数据为所包括的待查询参数的数值为目标查询数值的数据及其之后的数据。正向分页具体是指分页显示的数据为所包括的待查询参数的数值为目标查询数值的数据及其之前的数据。
S102、通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项。
在本实施例中,二分法具体是指现有技术中的常规二分查找方法,在此不再进行详细阐述。列表项具体是指待查询列表中的一条完整数据。具体来说,列表项不但包括有待查询参数,还包括有实质性数据内容,例如聊天内容等。
示例性地,待查询参数为数据的生成时间,目标查询数值为xx时xx分xx 秒,分页方向为负向分页,那么本步骤102就是在待查询列表中查找生成时间为xx时xx分xx秒的列表项以及生成时间在xx时xx分xx秒之后的列表项。
S103、判断在待查询列表中是否存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,若存在,则执行步骤104,若不存在,则执行步骤105。
可以理解的是,对于数据的存储来说,有时会出现数据内容错误,或数据缺失等情况。因此,如果所包括的待查询参数的数值与目标查询数值相匹配的列表项缺失,或是待查询参数的数值存现错误,那么通过常规的二分法则无法获取查询结果。因此,针对上述情况,在本实施例中,通过步骤103和步骤105 实现了在通过常规的二分法无法获取查询结果时,也可以准确获取所需分页数据。
首先,通过本步骤103判断是否可以在待查询列表中查找得到所包括的待查询参数的数值与目标查询数值相匹配的列表项,如果可以,则按照常规方法获取所需的分页数据;如果不可以,则通过步骤105获取所需的分页数据。
在本实施例中,所包括的待查询参数的数值与目标查询数值相匹配具体可以是所包括的待查询参数的数值等于目标查询数值,也可以是所包括的待查询参数的数值与目标查询数值之间满足设定数值关系等,本实施例对此不进行限制。
S104、根据所包括的待查询参数的数值与目标查询数值相匹配的列表项,以及分页方向确定分页数据。
在本实施例中,在查找到所包括的待查询参数的数值与目标查询数值相匹配的列表项之后,会以该列表项为起点并按照分页方向(正向分页或负向分页),从待查询列表中获取所需的分页数据,并将所获取的分页数据按页进行显示。
S105、根据通过二分法在待查询列表中进行查询时最后查询的两个列表项,以及分页方向确定分页数据。
在本实施例中,如果在待查询列表中不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,并不会向用户反馈无法查找到指定数据等内容,而是会通过本步骤105准确获取用户所需的分页数据。
可知的是,在通过二分法在待查询列表中进行数据查找时,如果待查询列表中不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,那么在二分法执行过程中,最后与目标查询数值进行比对的两个列表项所分别包括的两个待查询参数的数值,应该是一个大于目标查询数值,一个小于目标查询数值,且这两个待查询参数的数值是整个待查询列表中与目标查询数值最接近的两个待查询参数的数值。因此可以根据最后与目标查询数值进行比对的两个列表项所分别包括的两个待查询参数的数值,获取所需的分页数据。
具体来说,如果分页方向为负向分页,那么可以选取上述最后与目标查询数值进行比对的两个列表项所分别包括的两个待查询参数的数值中较大者作为分页数据的起始项,进而负向获取所需的分页数据;如果分页方向为正向分页,那么可以选取上述最后与目标查询数值进行比对的两个列表项所分别包括的两个待查询参数的数值中较小者作为分页数据的起始项,进而正向获取所需的分页数据。
本发明实施例提供了一种分页数据的获取方法,通过当不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项时,根据通过二分法在待查询列表中进行查询时最后查询的两个列表项及分页方向确定分页数据,解决了现有技术中当通过二分法获取不到分页数据起始项时,则无法准确获取所需分页数据的技术缺陷,通过改良传统的二分查找法,在不影响查询效率的情况下,实现了在数据列表出现异常时,也可以准确、快速以简便地获取所需分页数据。
实施例二
图2是本发明实施例二提供的一种分页数据的获取方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,给出了一种具体化分页方向,具体化分页数据获取步骤的具体实施方式。
相应的,本实施例的方法具体包括:
S201、获取待查询参数的目标查询数值,以及分页数据对应的分页方向。
S202、通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项。
S203、判断在待查询列表中是否存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,若存在,则执行步骤204,若不存在,则执行步骤205。
S204、根据所包括的待查询参数的数值与目标查询数值相匹配的列表项,以及分页方向确定分页数据。
S205、获取通过二分法在待查询列表中进行查询时,最后查询的两个列表项各自的列表编号。
可以理解的是,在使用二分法查找列表中的数据时,该列表中的各个列表项一般都会包括有一个用于表示该列表项在整个列表中的排序位置的数值,以使得二分法可以正确执行。
因此,在本实施例中,以列表编号作为表示列表项在整个待查询列表中的排列位置的数据,典型的可以是使用1至N之间的正整数作为列表编号,其中 N为待查询列表中列表项的总数量。
S206、判断分页方向为正向分页,还是负向分页,若是正向分页,则执行步骤208,若是负向分页,则执行步骤207。
由于正向分页与负向分页所对应的列表项的获取方式不同,所以,在本实施例中,首先通过步骤206判断分页的方向,然后通过步骤207和步骤208分别针对负向分页和正向分页进行处理。当然,如果是同时获取正向分页数据以及正向分页数据,那么可以同时执行步骤207和步骤208。
S207、选取最后查询的两个列表项中列表编号较小者作为查询起始项,并从查询起始项起,按照列表编号减小的方向获取设定数量的列表项,得到分页数据。
在本实施例中,待查询列表中列表项的排列顺序为按照待查询参数的降序进行排列,且待查询列表中的列表项的列表编号依据列表项从前至后的排列顺序递增。可见,待查询列表中列表编号越大的列表项所包括的待查询参数的数值越小。
因此最后查询的两个列表项中列表编号较小者所包括的待查询参数的数值应大于目标查询数值,所以,当分页方向为负向分页时,应从最后查询的两个列表项中列表编号较小者开始,按照列表编号减小的方向获取设定数量的列表项,得到分页数据。其中,设定数量具体可以是分页数据中固定显示列表项的数量等。
S208、选取最后查询的两个列表项中列表编号较大者作为查询起始项,从查询起始项起,按照列表编号增加的方向获取设定数量的列表项,得到分页数据。
基于步骤207中的叙述内容可知,最后查询的两个列表项中列表编号较大者所包括的待查询参数的数值应小于目标查询数值,所以,当分页方向为正向分页时,应从最后查询的两个列表项中列表编号较大者开始,按照列表编号增加的方向获取设定数量的列表项,得到分页数据。
本发明实施例提供了一种分页数据的获取方法,该方法具体化了分页方向,具体化了分页数据获取步骤,实现了在数据列表出现异常时,也可以准确、快速以简便地获取所需的正向分页或负向分页对应的分页数据。
实施例三
图3是本发明实施例三提供的一种分页数据的获取方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,给出了一种增加目标查询数值大小的判断步骤,具体化分页数据获取步骤的具体实施方式。
相应的,本实施例的方法具体包括:
S301、获取待查询参数的目标查询数值,以及分页数据对应的分页方向。
在本实施例中,待查询参数具体可以为列表项的生成时间,列表项的生成时间具体可以精确到毫秒。
S302、判断目标查询数值是否小于待查询列表中各列表项包括的待查询参数的数值中的最大值,且小于待查询列表中各列表项包括的待查询参数的数值中的最小值,若是,则执行步骤303,若否,则结束。
可以理解的是,有时待查询列表项可能并不满足用户输入的查询条件(即目标查询数值),在这种情况下,则无需执行二分法进行查找。
因此,在本实施例中,首先确定目标查询数值是否小于待查询列表中各列表项包括的待查询参数的数值中的最大值,且小于待查询列表中各列表项包括的待查询参数的数值中的最小值(由于待查询列表中所有的列表项是按照待查询参数的数值降序或升序进行排列的,所以可以通过本步骤302确定目标查询数值是否有效),如果是,则通过二分法进行查找,即执行步骤303至步骤313;如果不是,则不进行任何查找操作,可以同时向用户反馈“查找无效”等信息。
S303、通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项。
S304、判断在待查询列表中是否存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,若存在,则执行步骤305,若不存在,则执行步骤306。
S305、根据所包括的待查询参数的数值与目标查询数值相匹配的列表项,以及分页方向确定分页数据。
S306、获取通过二分法在待查询列表中进行查询时,最后查询的两个列表项各自的列表编号。
S307、判断分页方向为正向分页,还是负向分页,若是正向分页,则执行步骤311,若是负向分页,则执行步骤308。
S308、将列表编号比最后查询的两个列表项的两个列表编号中的较小者大设定整数值的列表项作为遍历起始项。
在本实施例中,当分页方向为负向分页时,通过步骤308至步骤310获取所需分页数据。
同样地,在本实施例中,待查询列表中列表项的排列顺序也是按照待查询参数的降序进行排列,且待查询列表中的列表项的列表编号也是依据列表项从前至后的排列顺序递增。所以,待查询列表中列表编号越小的列表项所包括的待查询参数的数值越大。
可以理解的是,通过二分法进行数据查找时,有时会出现查找错误的情况。例如最后查找的两个列表项所包括的待查询参数的数值均大于或均小于目标查询数值。
因此,在本实施例中,不是直接从最后查询的两个列表项中列表编号较小者或较大者开始获取分页数据。而是当分页方向为负向分页时,从列表编号比最后查询的两个列表项的两个列表编号中的较小者大设定整数值的列表项开始遍历,找到第一个所包括的待查询参数的数值大于目标查询数值的列表项,并将该列表项设置为分页数据的起始项,由此可以更好地保证分页数据的正确性。其中,设定整数值为正整数值,典型的可以是2或3等。
具体来说,可以依据二分法在执行过程中出现错误的平均严重程度来确定“设定整数值的大小”,例如,如果二分法在执行过程中出现错误的平均严重程度较高,那么可以将“设定整数值”设置的大一些。
S309、在待查询列表中从遍历起始项起,按照列表编号减小的方向遍历每一个列表项,直至查找到所包括的待查询参数的数值大于目标查询数值的列表项,并将该列表项作为查询起始项。
在本实施例中,在确定遍历起始项之后,即会在待查询列表中从遍历起始项起,按照列表编号减小的方向(即按照待查询参数的数值增加的方向)遍历每一个列表项,直至查找到所包括的待查询参数的数值大于目标查询数值的列表项,并将该列表项作为查询起始项。
S310、在待查询列表中从查询起始项起,按照列表编号减小的方向获取设定数量的列表项,并将所获取的所有列表项按照与获取顺序相反的顺序进行排列,得到分页数据。
S311、将列表编号比最后查询的两个列表项的两个列表编号中的较大者小设定整数值的列表项作为遍历起始项。
同样地,根据步骤308中的叙述内容可知,如果直接从最后查询的两个列表项的两个列表编号中的较大者开始获取分页数据,有可能出现错误。因此,在本实施例中,当分页方向为正向分页时,会从列表编号比最后查询的两个列表项的两个列表编号中的较大者小设定整数值的列表项开始遍历,找到第一个所包括的待查询参数的数值小于目标查询数值的列表项,并将该列表项设置为分页数据的起始项。
S312、在待查询列表中从遍历起始项起,按照列表编号增加的方向遍历每一个列表项,直至查找到所包括的待查询参数的数值小于目标查询数值的列表项,并将该列表项作为查询起始项。
S313、在待查询列表中从查询起始项起,按照列表编号增加的方向获取设定数量的列表项,并将所获取的所有列表项按照获取的顺序进行排列,得到分页数据。
本发明实施例提供了一种分页数据的获取方法,该方法增加了目标查询数值大小的判断步骤,以减少不必要的计算过程,减低就是计算量,具体化了分页数据获取步骤,实现了在二分法执行错误时,也可正确获取所需分页数据。
实施例四
图4是本发明实施例四提供的一种分页数据的获取装置的结构图。如图4 所示,所述装置包括:目标查询数值获取模块401、查找模块402以及分页数据确定模块403,其中:
目标查询数值获取模块401,用于获取待查询参数的目标查询数值,以及分页数据对应的分页方向;
查找模块402,用于通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项;
分页数据确定模块403,用于如果在待查询列表中不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,则根据通过二分法在待查询列表中进行查询时最后查询的两个列表项,以及分页方向确定分页数据。
本发明实施例提供了一种分页数据的获取装置,该装置首先通过目标查询数值获取模块401获取待查询参数的目标查询数值,以及分页数据对应的分页方向,然后通过查找模块402通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项,最后,如果在待查询列表中不存在所包括的待查询参数的数值与目标查询数值相匹配的列表项,则通过分页数据确定模块403根据通过二分法在待查询列表中进行查询时最后查询的两个列表项,以及分页方向确定分页数据。
该装置解决了现有技术中当通过二分法获取不到分页数据起始项时,则无法准确获取所需分页数据的技术缺陷,通过改良传统的二分查找法,在不影响查询效率的情况下,实现了在数据列表出现异常时,也可以准确、快速以简便地获取所需分页数据。
在上述各实施例的基础上,分页方向具体可以为负向分页,或正向分页。
在上述各实施例的基础上,待查询列表中列表项的排列顺序可以为按照待查询参数的降序进行排列;待查询列表中的列表项的列表编号可以依据列表项从前至后的排列顺序递增;
相应地,分页数据确定模块403可以包括:
列表编号获取单元,用于获取通过二分法在待查询列表中进行查询时,最后查询的两个列表项各自的列表编号;
负向分页单元,用于如果分页方向为负向分页,则选取最后查询的两个列表项中列表编号较小者作为查询起始项,并从查询起始项起,按照列表编号减小的方向获取设定数量的列表项,得到分页数据;
正向分页单元,用于如果分页方向为正向分页,则选取最后查询的两个列表项中列表编号较大者作为查询起始项,从查询起始项起,按照列表编号增加的方向获取设定数量的列表项,得到分页数据。
在上述各实施例的基础上,负向分页单元可以包括:
第一遍历起始项确定子单元,用于如果分页方向为负向分页,则将列表编号比最后查询的两个列表项的两个列表编号中的较小者大设定整数值的列表项作为遍历起始项;
第一查询起始项确定子单元,用于在待查询列表中从遍历起始项起,按照列表编号减小的方向遍历每一个列表项,直至查找到所包括的待查询参数的数值大于目标查询数值的列表项,并将该列表项作为查询起始项;
第一分页数据确定子单元,用于在待查询列表中从查询起始项起,按照列表编号减小的方向获取设定数量的列表项,并将所获取的所有列表项按照与获取顺序相反的顺序进行排列,得到分页数据。
在上述各实施例的基础上,正向分页单元可以包括:
第二遍历起始项确定子单元,如果分页方向为正向分页,则将列表编号比最后查询的两个列表项的两个列表编号中的较大者小设定整数值的列表项作为遍历起始项;
第二查询起始项确定子单元,在待查询列表中从遍历起始项起,按照列表编号增加的方向遍历每一个列表项,直至查找到所包括的待查询参数的数值小于目标查询数值的列表项,并将该列表项作为查询起始项;
第二分页数据确定子单元,在待查询列表中从查询起始项起,按照列表编号增加的方向获取设定数量的列表项,并将所获取的所有列表项按照获取的顺序进行排列,得到分页数据。
在上述各实施例的基础上,还可以包括:
判断模块,用于在通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项之前,判断目标查询数值是否小于待查询列表中各列表项包括的待查询参数的数值中的最大值,且小于待查询列表中各列表项包括的待查询参数的数值中的最小值;
匹配操作执行模块,用于若是,则执行通过二分法在待查询列表中查找所包括的待查询参数的数值与目标查询数值相匹配的列表项的操作。
在上述各实施例的基础上,待查询参数可以为待查询列表中的列表项的生成时间。
本发明实施例所提供的位线电压的施加装置可用于执行本发明任意实施例提供的位线电压的施加方法,具备相应的功能模块,实现相同的有益效果。
实施例五
图5为本发明实施例五提供的一种设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性设备12的框图。图5显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构 (ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM, DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/ 或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器 24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和 /或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网 (LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的分页数据的获取方法。也即:获取待查询参数的目标查询数值,以及分页数据对应的分页方向;通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
实施例六
本发明实施例六还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本发明实施例所述的分页数据的获取方法。也即:获取待查询参数的目标查询数值,以及分页数据对应的分页方向;通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器 (CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、 Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网 (WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种分页数据的获取方法,其特征在于,包括:
获取待查询参数的目标查询数值,以及分页数据对应的分页方向;
通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;
如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
2.根据权利要求1所述的方法,其特征在于,所述分页方向具体为负向分页,或正向分页。
3.根据权利要求2所述的方法,其特征在于,所述待查询列表中列表项的排列顺序为按照所述待查询参数的降序进行排列;所述待查询列表中的列表项的列表编号依据所述列表项从前至后的排列顺序递增;
相应地,所述根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据,包括:
获取通过所述二分法在所述待查询列表中进行查询时,最后查询的两个列表项各自的列表编号;
如果所述分页方向为负向分页,则选取所述最后查询的两个列表项中列表编号较小者作为查询起始项,并从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,得到所述分页数据;
如果所述分页方向为正向分页,则选取所述最后查询的两个列表项中列表编号较大者作为查询起始项,从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,得到所述分页数据。
4.根据权利要求3所述的方法,其特征在于,所述如果所述分页方向为负向分页,则选取所述最后查询的两个列表项中列表编号较小者作为查询起始项,从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,得到所述分页数据,包括:
如果所述分页方向为负向分页,则将列表编号比所述最后查询的两个列表项的两个列表编号中的较小者大设定整数值的列表项作为遍历起始项;
在所述待查询列表中从所述遍历起始项起,按照所述列表编号减小的方向遍历每一个列表项,直至查找到所包括的所述待查询参数的数值大于所述目标查询数值的列表项,并将该列表项作为查询起始项;
在所述待查询列表中从所述查询起始项起,按照所述列表编号减小的方向获取设定数量的列表项,并将所获取的所有列表项按照与获取顺序相反的顺序进行排列,得到所述分页数据。
5.据权利要求3所述的方法,其特征在于,所述如果所述分页方向为正向分页,则选取所述最后查询到的两个列表项中列表编号较大者作为查询起始项,从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,得到所述分页数据,包括:
如果所述分页方向为正向分页,则将列表编号比所述最后查询的两个列表项的两个列表编号中的较大者小设定整数值的列表项作为遍历起始项;
在所述待查询列表中从所述遍历起始项起,按照所述列表编号增加的方向遍历每一个列表项,直至查找到所包括的所述待查询参数的数值小于所述目标查询数值的列表项,并将该列表项作为查询起始项;
在所述待查询列表中从所述查询起始项起,按照所述列表编号增加的方向获取设定数量的列表项,并将所获取的所有列表项按照获取的顺序进行排列,得到所述分页数据。
6.根据权利要求1-5中任一项所述方法,其特征在于,在所述通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项之前,还包括:
判断所述目标查询数值是否小于所述待查询列表中各列表项包括的所述待查询参数的数值中的最大值,且小于所述待查询列表中各列表项包括的所述待查询参数的数值中的最小值;
若是,则执行所述通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项的操作。
7.根据权利要求1-5中任一项所述方法,其特征在于,所述待查询参数为所述待查询列表中的列表项的生成时间。
8.一种分页数据的获取装置,其特征在于,包括:
目标查询数值获取模块,用于获取待查询参数的目标查询数值,以及分页数据对应的分页方向;
查找模块,用于通过二分法在待查询列表中查找所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项;
分页数据确定模块,用于如果在所述待查询列表中不存在所包括的所述待查询参数的数值与所述目标查询数值相匹配的列表项,则根据通过所述二分法在所述待查询列表中进行查询时最后查询的两个列表项,以及所述分页方向确定所述分页数据。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一项所述的分页数据的获取方法。
10.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一项所述的分页数据的获取方法。
CN201811407787.8A 2018-11-23 2018-11-23 分页数据的获取方法及装置、设备及存储介质 Active CN109543027B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811407787.8A CN109543027B (zh) 2018-11-23 2018-11-23 分页数据的获取方法及装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811407787.8A CN109543027B (zh) 2018-11-23 2018-11-23 分页数据的获取方法及装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN109543027A true CN109543027A (zh) 2019-03-29
CN109543027B CN109543027B (zh) 2020-02-07

Family

ID=65849446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811407787.8A Active CN109543027B (zh) 2018-11-23 2018-11-23 分页数据的获取方法及装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN109543027B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417276A (zh) * 2020-11-18 2021-02-26 北京字节跳动网络技术有限公司 分页数据获取方法、装置、电子设备及计算机可读存储介质
CN112699147A (zh) * 2020-12-31 2021-04-23 京东数字科技控股股份有限公司 分页查询方法、装置、设备及存储介质
CN116305929A (zh) * 2023-03-17 2023-06-23 北京天圣华信息技术有限责任公司 一种数控加工仿真方法、装置、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936882A (zh) * 2006-10-13 2007-03-28 北京北大方正电子有限公司 一种分页表格的数据处理方法及系统
CN103425708A (zh) * 2012-05-25 2013-12-04 金蝶软件(中国)有限公司 一种优化的web分页查询方法及装置
CN104298788A (zh) * 2014-11-13 2015-01-21 中国建设银行股份有限公司 一种分页查询方法和系统
CN105912227A (zh) * 2016-04-13 2016-08-31 广州阿里巴巴文学信息技术有限公司 一种文本信息的显示方法、装置和移动设备
CN107193822A (zh) * 2016-03-14 2017-09-22 阿里巴巴集团控股有限公司 用于分页查询的方法、装置及设备
CN107992561A (zh) * 2017-11-29 2018-05-04 四川巧夺天工信息安全智能设备有限公司 一种解析edb数据库源文件中过长字段的方法
CN108090086A (zh) * 2016-11-21 2018-05-29 迈普通信技术股份有限公司 分页查询方法及装置
CN108509528A (zh) * 2018-03-14 2018-09-07 智童时刻(厦门)科技有限公司 一种用于数据定位的分页展示方法
CN108848244A (zh) * 2018-04-02 2018-11-20 阿里巴巴集团控股有限公司 一种分页显示的方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936882A (zh) * 2006-10-13 2007-03-28 北京北大方正电子有限公司 一种分页表格的数据处理方法及系统
CN103425708A (zh) * 2012-05-25 2013-12-04 金蝶软件(中国)有限公司 一种优化的web分页查询方法及装置
CN104298788A (zh) * 2014-11-13 2015-01-21 中国建设银行股份有限公司 一种分页查询方法和系统
CN107193822A (zh) * 2016-03-14 2017-09-22 阿里巴巴集团控股有限公司 用于分页查询的方法、装置及设备
CN105912227A (zh) * 2016-04-13 2016-08-31 广州阿里巴巴文学信息技术有限公司 一种文本信息的显示方法、装置和移动设备
CN108090086A (zh) * 2016-11-21 2018-05-29 迈普通信技术股份有限公司 分页查询方法及装置
CN107992561A (zh) * 2017-11-29 2018-05-04 四川巧夺天工信息安全智能设备有限公司 一种解析edb数据库源文件中过长字段的方法
CN108509528A (zh) * 2018-03-14 2018-09-07 智童时刻(厦门)科技有限公司 一种用于数据定位的分页展示方法
CN108848244A (zh) * 2018-04-02 2018-11-20 阿里巴巴集团控股有限公司 一种分页显示的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417276A (zh) * 2020-11-18 2021-02-26 北京字节跳动网络技术有限公司 分页数据获取方法、装置、电子设备及计算机可读存储介质
CN112699147A (zh) * 2020-12-31 2021-04-23 京东数字科技控股股份有限公司 分页查询方法、装置、设备及存储介质
CN116305929A (zh) * 2023-03-17 2023-06-23 北京天圣华信息技术有限责任公司 一种数控加工仿真方法、装置、设备及存储介质
CN116305929B (zh) * 2023-03-17 2023-10-03 北京天圣华信息技术有限责任公司 一种数控加工仿真方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN109543027B (zh) 2020-02-07

Similar Documents

Publication Publication Date Title
US7512595B1 (en) Methods and systems for utilizing configuration information
CN109543027A (zh) 分页数据的获取方法及装置、设备及存储介质
CN110222072A (zh) 数据查询平台、方法、设备和存储介质
CN109558525B (zh) 一种测试数据集的生成方法、装置、设备和存储介质
CN110417879A (zh) 一种消息处理方法、装置、设备及存储介质
CN107741937A (zh) 一种数据查询方法及装置
CN104504003A (zh) 图数据的搜索方法和装置
CN110532347A (zh) 一种日志数据处理方法、装置、设备和存储介质
JPWO2011067932A1 (ja) 表検索装置、表検索方法、及び、表検索システム
CN109376173A (zh) 一种数据查询方法、装置、电子设备及存储介质
CN109800336A (zh) 基于键值对存储系统的表格实现方法、装置、设备和介质
CN110488990A (zh) 输入纠错方法及装置
CN111930823A (zh) 一种数据查询方法、装置、数据中台和存储介质
WO2017107130A1 (zh) 数据查询方法和数据库系统
CN110175128A (zh) 一种相似代码案例获取方法、装置、设备和存储介质
US10606568B2 (en) Method and apparatus for compiling computer language
CN112905620A (zh) 数据查询方法及装置、电子设备、存储介质
CN109033456A (zh) 一种条件查询方法、装置、电子设备和存储介质
CN108959454A (zh) 一种提示子句指定方法、装置、设备及存储介质
WO2024113778A1 (zh) 现场可更换单元设备的槽位确定方法、装置、设备
CN112162982A (zh) 数据查询方法、装置、设备及介质
CN110377811A (zh) 一种设备名称的显示方法、装置、存储介质及电子设备
CN112052040A (zh) 处理方法、装置、计算机设备和存储介质
CN103257718B (zh) 汉字输入方法、设备及系统
CN108920695B (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
TR01 Transfer of patent right

Effective date of registration: 20211013

Address after: 215000 12F, friendship time building, No. 68, Qitai Road, Suzhou Industrial Park, Suzhou area, China (Jiangsu) pilot Free Trade Zone, Suzhou, Jiangsu

Patentee after: SUZHOU QINYOU NETWORK TECHNOLOGY Co.,Ltd.

Address before: 215006 building 22, Suhua science and Technology Park, 208 Tongyuan Road, Suzhou Industrial Park, Suzhou City, Jiangsu Province

Patentee before: SUZHJOU GAME FRIEND NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right