主播推荐方法、装置及计算机设备与流程

文档序号:14253501阅读:258来源:国知局
主播推荐方法、装置及计算机设备与流程

本发明涉及软件应用领域,具体涉及一种主播推荐方法、装置及计算机设备。



背景技术:

随着互联网技术的高速发展,人们通过互联网络可以快速地获得大量的网络信息。在错综复杂的网络信息中,对于用户来说,很难从大量的网络信息中寻找自己感兴趣的网络信息。而对于信息生产者来说,如何在大量的信息中给用户推送用户感兴趣的信息,也是一件困难的事情。

在主播推荐系统中,采用了竞技体育的淘汰方式,对在线主播进行筛选排名以给用户推荐主播。也即是根据主播的直播信息(如主播人气、用户喜欢程度),对在线主播进行两两对决,胜者晋级下一轮对决,输者淘汰出局。冠军作为第1名是合理的,但是亚军作为第2名就有问题了。因为有可能真正的第2名在决赛之前就输给了冠军。同样的,季军(殿军)作为第3(4)名都有问题,因为有可能真正的第3(4)名在半决赛之前就输给冠军(或亚军)。因此,采用这种竞技体育的淘汰方式对在线主播进行筛选排名,不能准确地根据主播的直播信息给用户推荐主播。



技术实现要素:

本发明的目的在于提供一种主播推荐方法、装置及计算机设备,使得推荐系统能够根据主播的直播信息,准确地给用户推荐主播。

为实现该目的,本发明采用如下技术方案:

一种主播推荐方法,包括以下步骤:获取预置数量的主播,将所述预置数量的主播置于队列中;执行第一筛选步骤,包括:a把所述队列作为当前队列;b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播;执行第二筛选步骤,包括:d获取第二筛选的次数n;e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中;f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e;其中,n为预置的正整数。

在其中一个实施例中,所述获取主播的当前直播信息,包括:获取预置时间段内的主播的当前直播信息。

在其中一个实施例中,所述主播的当前直播信息包括所述主播的当前吸纳用户数量的信息。

在其中一个实施例中,所述主播的当前直播信息包括所述主播当前获得的用户送礼的信息。

在其中一个实施例中,所述执行第二次筛选步骤之后,还包括:按照筛选推荐主播的先后顺序,向用户推荐主播。

在其中一个实施例中,所述执行第二次筛选步骤之后,还包括:按照筛选推荐主播的先后顺序,对所述推荐主播进行排序,将排序后的推荐主播展示给用户。

在其中一个实施例中,所述n预置为3;所述执行第一筛选步骤,还包括:把本次推荐主播作为第一名推荐主播推荐给用户;所述执行第二筛选步骤,还包括:把本筛选步骤中第一次获得的本次推荐主播作为第二名推荐主播推荐给用户;把本筛选步骤中第二次获得的本次推荐主播作为第三名推荐主播推荐给用户;把本筛选步骤中第三次获得的本次推荐主播作为第四名推荐主播推荐给用户。

在其中一个实施例中,所述n预置为3;所述执行第一筛选步骤,还包括:把本次推荐主播作为第一推荐主播;所述执行第二筛选步骤,还包括:把本筛选步骤中第一次获得的本次推荐主播作为第二推荐主播;把本筛选步骤中第二次获得的本次推荐主播作为第三推荐主播;把本筛选步骤中第三次获得的本次推荐主播作为第四推荐主播;所述执行第二筛选步骤之后,还包括:将所述第一推荐主播、所述第二推荐主播、所述第三推荐主播及所述第四推荐主播,按照筛选的先后顺序进行排序,展示给用户。

一种主播推荐装置,包括:获取模块,用于获取预置数量的主播,将所述预置数量的主播置于队列中;第一筛选模块,用于执行第一筛选步骤,包括:a把所述队列作为当前队列;b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播;第二筛选模块,用于执行第二筛选步骤,包括:d获取第二筛选的次数n;e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中;f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e;其中,n为预置的正整数。

一种计算机设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于:执行上述任一实施例所述的主播推荐方法。

与现有技术相比,本发明具备如下优点:

本发明的主播推荐方法通过执行第一筛选步骤,从预置数量的主播中筛根据主播的直播信息选出第一名(冠军)主播作为推荐主播。同时,在执行第二筛选步骤时,首先获取第二筛选步骤中的筛选次数n。在每一次筛选过程中,获取与上一次推荐主播对比过的主播置于队列中,再根据主播的直播信息,从该队列依次获取两个主播进行对决,获胜者直接进入下一轮对决中。重复该两两对决方式,直至筛选出只剩一个主播为止,将该主播作为该次筛选的推荐主播。如此类推,从而在第二筛选步骤中依次筛选出n个推荐主播。该主播推荐方法中,除筛选第一名推荐主播外,每次筛选的过程,均从与上一次推荐主播对比过的主播中依次进行主播的两两对决,从而筛选出真正的排名在上一次推荐主播之后的推荐主播,进而使得推荐系统能够根据主播的直播信息,准确地给用户推荐主播。

显然,上述有关本发明优点的描述是概括性的,更多的优点描述将体现在后续的实施例揭示中,以及,本领域技术人员也可以本发明所揭示的内容合理地发现本发明的其他诸多优点。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明主播推荐方法的一实施例流程示意图;

图2为本发明主播推荐装置的一实施例结构示意图;

图3为本发明提供的计算机设备部分结构的一实施例结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

本领域技术人员应当理解,本发明所称的“应用”、“应用程序”、“应用软件”以及类似表述的概念,是业内技术人员所公知的相同概念,是指由一系列计算机指令及相关数据资源有机构造的适于电子运行的计算机软件。除非特别指定,这种命名本身不受编程语言种类、级别,也不受其赖以运行的操作系统或平台所限制。理所当然地,此类概念也不受任何形式的终端所限制。

本领域技术人员应当理解,本发明所称的用户界面、显示界面泛指能够用于向智能终端发送所述控制指令的显示界面,例如,可以是android/ios/windowsphone系统的设置页面中的一个选项(或按键,由所述应用程序添加其中,下同),也可以是从桌面呼出的通知栏或者交互页面中的一个选项,还可以是所述应用程序的一个活动组件所构造的页面中的一个选项。

在一实施例中,本发明提供一种主播推荐方法,如图1所示,包括:

s100:获取预置数量的主播,将所述预置数量的主播置于队列中。

在本实施例中,服务器获取预置数量的主播,将该预置数量的主播置于队列中。也可以是,将该预置数量的主播置于列表或者其他存储单元中。

s200:执行第一筛选步骤,包括:a把所述队列作为当前队列;b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播。

在本实施例中,服务器执行第一筛选步骤,筛选出第一个(冠军)推荐主播。所述第一筛选步骤包括:

a把所述队列作为当前队列;也即是,将预置数量的主播所在的队列作为当前队列。

b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列。

具体地,在该步骤中,依次从当前队列中获取两个主播并且获取这两个主播的当前直播信息。根据这两个主播的当前直播信息进行对比,得到一个待推荐主播。把该待推荐主播置于后一个队列中。其中,主播的当前直播信息可以是,预置时间段内的主播的当前直播信息。如预置时间段内主播的当前吸纳用户数量的信息,预置时间段内主播当前获得的用户送礼的信息。本实施例中,可以是根据两个主播的预置时间段内主播的当前吸纳用户数量的信息进行对比,将吸纳用户数量多的主播作为待推荐主播置于后一队列中。同时,另外个主播也不在当前队列中。以此类推,每次从当前队列中获取出两个主播进行对比,并得到一个待推荐主播并将该待推荐主播置于后一队列。若直到当前队列只剩下一个主播,则直接将该主播置于后一队列。

c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播。

具体地,在该步骤中,服务器判断后一队列是否为一个主播。若后一队列只有一个主播,则将该主播作为本次筛选步骤的推荐主播。若否,将该后一队列作为当前队列,继续执行b步骤。也即是,服务器每次判断后一队列是否只有一个主播,若判断结果为否,则继续循环执行b步骤的筛选过程,将后一队列作为当前队列进行主播的对比筛选,直至判断出后一队列中只有一个主播为止,从而完成了所述第一筛选步骤。服务器执行完所述第一筛选步骤之后,即筛选出第一名(冠军)推荐主播。

s300:执行第二筛选步骤,包括:d获取第二筛选的次数n;e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中;f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e;其中,n为预置的正整数。

在本实施例中,服务器执行第二筛选步骤,可分别筛选出第二名(亚军)推荐主播、第三名(季军)推荐主播以及第四名(殿军)推荐主播等。所述第二筛选步骤包括:

d获取第二筛选的次数n;其中,n为预置的正整数。在该步骤中,获取第二次筛选的次数n也即是获取执行所述第二筛选步骤后筛选出的推荐主播数量为n个。

e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中。在该步骤中,服务器获取到与上一次推荐主播对比过的所有主播,把所有与上一次推荐主播对比过的主播加入当前队列中。

f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列。

具体地,在该步骤中,依次从当前队列中获取两个主播并且获取这两个主播的当前直播信息。根据这两个主播的当前直播信息进行对比,得到一个待推荐主播。把该待推荐主播置于后一个队列中。其中,主播的当前直播信息可以是,预置时间段内的主播的当前直播信息。如预置时间段内主播的当前吸纳用户数量的信息,预置时间段内主播当前获得的用户送礼的信息。本实施例中,可以是根据两个主播的预置时间段内主播的当前吸纳用户数量的信息进行对比,将吸纳用户数量多的主播作为待推荐主播置于后一队列中。同时,另外个主播也不在当前队列中。以此类推,每次从当前队列中获取出两个主播进行对比,并得到一个待推荐主播并将该待推荐主播置于后一队列。若直到当前队列只剩下一个主播,则直接将该主播置于后一队列。

g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e。

具体地,在该步骤中,服务器判断后一队列是否为一个主播。若后一队列只有一个主播,则将该主播作为本次筛选步骤的推荐主播。若否,将该后一队列作为当前队列,继续执行e步骤。也即是,服务器每次判断后一队列是否只有一个主播,若判断结果为否,则继续循环执行e步骤的筛选过程,将后一队列作为当前队列进行主播的对比筛选,直至判断出后一队列中只有一个主播为止。该主播即为本次筛选的推荐主播。

服务器筛选出推荐主播之后,进一步地,判断n-1是否为0。若n-1为0,则说明第二筛选步骤执行完毕。若n-1不为0,则将n=n-1,继续步骤e。也即是,若n-1不为0,则服务器继续执行从步骤e开始的筛选步骤。每次筛选出一个推荐主播,直至服务器检测出n-1为0为止。

也即是,假设n预置为3。第二筛选步骤执行3次筛选过程。每次筛选过程为执行步骤e至步骤g,以筛选出一个推荐主播。依次类推,执行了3次筛选过程,依次筛选出3个推荐主播。也即是依次筛选第二名(亚军)推荐主播、第三名(季军)推荐主播以及第四名(殿军)推荐主播。

本发明的主播推荐方法通过执行第一筛选步骤,从预置数量的主播中筛根据主播的直播信息选出第一名(冠军)主播作为推荐主播。同时,在执行第二筛选步骤时,首先获取第二筛选步骤中的筛选次数n。在每一次筛选过程中,获取与上一次推荐主播对比过的主播置于队列中,再根据主播的直播信息,从该队列依次获取两个主播进行对决,获胜者直接进入下一轮对决中。重复该两两对决方式,直至筛选出只剩一个主播为止,将该主播作为该次筛选的推荐主播。如此类推,从而在第二筛选步骤中依次筛选出n个推荐主播。该主播推荐方法中,除筛选第一名推荐主播外,每次筛选的过程,均从与上一次推荐主播对比过的主播中依次进行主播的两两对决,从而筛选出真正的排名在上一次推荐主播之后的推荐主播,进而使得推荐系统能够根据主播的直播信息,准确地给用户推荐主播。

在一实施例中,在执行第二次筛选步骤之后,还包括:按照筛选推荐主播的先后顺序,向用户推荐主播。也即是,例如根据筛选次数的先后顺序,将筛选出的第一名推荐主播、第二名推荐主播、第三名推荐主播及第四名推荐主播先后推荐给用户。

或者,在其他实施例中,所述执行第二次筛选步骤之后,还包括:按照筛选推荐主播的先后顺序,对所述推荐主播进行排序,将排序后的推荐主播展示给用户。也即是,例如根据筛选次数的先后顺序,对筛选出的推荐主播进行先后排序,如第一名推荐主播、第二名推荐主播、第三名推荐主播及第四名推荐主播。再将第一名推荐主播、第二名推荐主播、第三名推荐主播及第四名推荐主播按排序展示给用户。

在一实施例中,所述n预置为3;所述执行第一筛选步骤,还包括:把本次推荐主播作为第一名推荐主播推荐给用户;所述执行第二筛选步骤,还包括:把本筛选步骤中第一次获得的本次推荐主播作为第二名推荐主播推荐给用户;把本筛选步骤中第二次获得的本次推荐主播作为第三名推荐主播推荐给用户;把本筛选步骤中第三次获得的本次推荐主播作为第四名推荐主播推荐给用户。在其他实施例中,也可以是,所述执行第一筛选步骤,还包括:把本次推荐主播作为第一推荐主播;所述执行第二筛选步骤,还包括:把本筛选步骤中第一次获得的本次推荐主播作为第二推荐主播;把本筛选步骤中第二次获得的本次推荐主播作为第三推荐主播;把本筛选步骤中第三次获得的本次推荐主播作为第四推荐主播;所述执行第二筛选步骤之后,还包括:将所述第一推荐主播、所述第二推荐主播、所述第三推荐主播及所述第四推荐主播,按照筛选的先后顺序进行排序,展示给用户。

以下给出一个具体的实施例。在本实施例中,n预置为3,也即是根据本发明的主播推荐方法筛选出前四名的主播进行主播推荐。其中,服务器执行第一筛选步骤之后,筛选出第一名推荐主播。同时,将第一筛选步骤中筛选过程直接输掉的所有主播装入第一列表中。服务器在执行第二筛选步骤时,先获取到筛选次数n为3。在该步骤中,先执行第一次筛选,从第一列表中获取与第一名主播对比过的主播中筛选出第二名推荐主播,并且将本次筛选过程中输掉的所有主播装入第二列表中。再执行第二次筛选,从第一列表以及第二列表中获取与第二名主播对比过的主播中筛选出第三名推荐主播,并且将筛选过程中输掉的所有主播装入第三列表中。最后执行第三次筛选,从第一列表、第二列表以及第三列表中与第三名主播对比过的主播中筛选出第四名推荐主播,并且将筛选过程中输掉的所有主播装入第四列表中。因此,服务器执行完所述第一筛选步骤和所述第二筛选步骤之后,依次获取到第一名推荐主播、第二名推荐主播、第三名推荐主播和第四名推荐主播。

具体的逻辑过程也可参照如下:

令输入的数据集合为inputdata(类型为list<integer>,集合中数据的类型不妨假定为integer,特点是可以比较大小即可),且inputdata.get(i)表示获取inputdata的第i个元素,且此处要求inputdata非空,|inputdata|=n(表示集合inputdata的元素个数,下同)。具体如下:

可定义如下操作为:二分法查找最高值

以下列出计算最高的前4名:

首先计算第1名,操作如下:

其中,result.get(最大值)即为第1名,真正的第2名一定存在于列表:result.get(直接输者).get(第1名)之中。为方便后续描述,该result另记为:第1名result(下面同理)。

再计算第2名,操作如下:

如上已经计算出第2名,那很明显,第3名一定位于直接输给第2名的那些人里面。这包括2部分,也就是上面两轮pk中,输给第2名的人,从而也就是:

第1名result.get(直接输者).get(第2名)

∪第2名result.get(直接输者).get(第2名)

result.get(最大值)即为第2名。

再计算第3名,如下:

result.get(最大值)即为第3名。

再计算第4名,操作如下:

result.get(最大值)即为第4名。

下面通过一个简单的例子来说明上面的操作(此处,假设1至8的正整数代表8个不同的主播):令输入数据集合为inputdata={1,8,4,6,2,5,3,7},也即是顺序打乱的1至8的正整数。通过4个小表格来列出在争夺(数值最小的)前4名过程的pk。诸如1st的表示(第1次pk,其他的同理),1st下面的元素则是pk中胜出的元素。参见表1-1:

表1-1定出前4名的示例

在传统的筛选过程中,根据过往的经验,对主播的直播信息有预判。当有个主播的直播信息的预判的情况下,如何来适当的安排顺序使得降低pk的次数:inputdata中元素是按数值大小来排序,按需要的顺序排序。比如:需要计算最小的前4个元素,则进行从小到大排序。再以表1-1为例,对inputdata进行从小到大排序后,再进行同样的处理过程,如表2-1所示。不难发现,在判断前2名时,pk的次数都是一样的,这个对所有的都是一样的,主要是在第3(4)名上,表2-1比表1-1各少了1次pk,如果元素时,会比较明显。

表2-1在有预判的情况下,定出前4名的示例

其中,在决定第2、3、4名时,5-8这4个元素只用派出他们的最大者参加pk即可,而要这样安排,需要满足2个条件:5-8这4个元素在他们内部决定出他们的最大者之后,再去跟数值1进行pk,从而把6-8这3个元素成功的封压了。

在另一实施例中,本发明提供一种主播推荐装置。如图2所示,该主播推荐装置包括获取模块100、第一筛选模块200和第二筛选模块300。

获取模块100用于获取预置数量的主播,将所述预置数量的主播置于队列中。

在本实施例中,服务器获取预置数量的主播,将该预置数量的主播置于队列中。也可以是,将该预置数量的主播置于列表或者其他存储单元中。

第一筛选模块200用于执行第一筛选步骤,包括:a把所述队列作为当前队列;b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播。

在本实施例中,服务器执行第一筛选步骤,筛选出第一个(冠军)推荐主播。所述第一筛选步骤包括:

a把所述队列作为当前队列;也即是,将预置数量的主播所在的队列作为当前队列。

b依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列。

具体地,在该步骤中,依次从当前队列中获取两个主播并且获取这两个主播的当前直播信息。根据这两个主播的当前直播信息进行对比,得到一个待推荐主播。把该待推荐主播置于后一个队列中。其中,主播的当前直播信息可以是,预置时间段内的主播的当前直播信息。如预置时间段内主播的当前吸纳用户数量的信息,预置时间段内主播当前获得的用户送礼的信息。本实施例中,可以是根据两个主播的预置时间段内主播的当前吸纳用户数量的信息进行对比,将吸纳用户数量多的主播作为待推荐主播置于后一队列中。同时,另外个主播也不在当前队列中。以此类推,每次从当前队列中获取出两个主播进行对比,并得到一个待推荐主播并将该待推荐主播置于后一队列。若直到当前队列只剩下一个主播,则直接将该主播置于后一队列。

c判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行b步骤;若是,把该主播作为本次推荐主播。

具体地,在该步骤中,服务器判断后一队列是否为一个主播。若后一队列只有一个主播,则将该主播作为本次筛选步骤的推荐主播。若否,将该后一队列作为当前队列,继续执行b步骤。也即是,服务器每次判断后一队列是否只有一个主播,若判断结果为否,则继续循环执行b步骤的筛选过程,将后一队列作为当前队列进行主播的对比筛选,直至判断出后一队列中只有一个主播为止,从而完成了所述第一筛选步骤。服务器执行完所述第一筛选步骤之后,即筛选出第一名(冠军)推荐主播。

第二筛选模块300用于执行第二筛选步骤,包括:d获取第二筛选的次数n;e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中;f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列;g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e;其中,n为预置的正整数。

在本实施例中,服务器执行第二筛选步骤,可分别筛选出第二名(亚军)推荐主播、第三名(季军)推荐主播以及第四名(殿军)推荐主播等。所述第二筛选步骤包括:

d获取第二筛选的次数n;其中,n为预置的正整数。在该步骤中,获取第二次筛选的次数n也即是获取执行所述第二筛选步骤后筛选出的推荐主播数量为n个。

e获取上一次推荐主播对比过的主播,把对比过的主播置于当前队列中。在该步骤中,服务器获取到与上一次推荐主播对比过的所有主播,把所有与上一次推荐主播对比过的主播加入当前队列中。

f依次获取当前队列中的两个主播,获取主播的当前直播信息,对比当前直播信息得到一个待推荐主播,把该待推荐主播置于后一队列,若依次获取主播后当前队列只剩一个主播,把该主播置于后一队列。

具体地,在该步骤中,依次从当前队列中获取两个主播并且获取这两个主播的当前直播信息。根据这两个主播的当前直播信息进行对比,得到一个待推荐主播。把该待推荐主播置于后一个队列中。其中,主播的当前直播信息可以是,预置时间段内的主播的当前直播信息。如预置时间段内主播的当前吸纳用户数量的信息,预置时间段内主播当前获得的用户送礼的信息。本实施例中,可以是根据两个主播的预置时间段内主播的当前吸纳用户数量的信息进行对比,将吸纳用户数量多的主播作为待推荐主播置于后一队列中。同时,另外个主播也不在当前队列中。以此类推,每次从当前队列中获取出两个主播进行对比,并得到一个待推荐主播并将该待推荐主播置于后一队列。若直到当前队列只剩下一个主播,则直接将该主播置于后一队列。

g判断后一队列是否为一个主播,若否,把后一队列作为当前队列,继续执行e步骤,若是,把该主播作为本次推荐主播;判断n-1是否为0,若否,将n=n-1,继续步骤e。

具体地,在该步骤中,服务器判断后一队列是否为一个主播。若后一队列只有一个主播,则将该主播作为本次筛选步骤的推荐主播。若否,将该后一队列作为当前队列,继续执行e步骤。也即是,服务器每次判断后一队列是否只有一个主播,若判断结果为否,则继续循环执行e步骤的筛选过程,将后一队列作为当前队列进行主播的对比筛选,直至判断出后一队列中只有一个主播为止。该主播即为本次筛选的推荐主播。

服务器筛选出推荐主播之后,进一步地,判断n-1是否为0。若n-1为0,则说明第二筛选步骤执行完毕。若n-1不为0,则将n=n-1,继续步骤e。也即是,若n-1不为0,则服务器继续执行从步骤e开始的筛选步骤。每次筛选出一个推荐主播,直至服务器检测出n-1为0为止。

也即是,假设n预置为3。第二筛选步骤执行3次筛选过程。每次筛选过程为执行步骤e至步骤g,以筛选出一个推荐主播。依次类推,执行了3次筛选过程,依次筛选出3个推荐主播。也即是依次筛选第二名(亚军)推荐主播、第三名(季军)推荐主播以及第四名(殿军)推荐主播。

上述一种主播推荐装置的各个模块还用于实现对应上述一种主播推荐方法中,对应方法步骤中的各个功能,在此不再重述。

本发明还提供一种计算机设备。该计算机设备包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行上述任一实施例所述的主播推送方法。

图3为本发明一实施例中的计算机设备结构示意图。例如服务器、个人计算机以及网络设备。如图3所示,设备包括处理器303、存储器305、输入单元307以及显示单元309等器件。本领域技术人员可以理解,图3示出的设备结构器件并不构成对所有设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器305可用于存储应用程序301以及各功能模块,处理器303运行存储在存储器305的应用程序301,从而执行设备的各种功能应用以及数据处理。存储器可以是内存储器或外存储器,或者包括内存储器和外存储器两者。内存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦写可编程rom(eeprom)、快闪存储器、或者随机存储器。外存储器可以包括硬盘、软盘、zip盘、u盘、磁带等。本发明所公开的存储器包括但不限于这些类型的存储器。本发明所公开的存储器只作为例子而非作为限定。

输入单元307用于接收信号的输入,以及接收用户输入的关键字。输入单元307可包括触控面板以及其它输入设备。触控面板可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元309可用于显示用户输入的信息或提供给用户的信息以及计算机设备的各种菜单。显示单元309可采用液晶显示器、有机发光二极管等形式。处理器303是计算机设备的控制中心,利用各种接口和线路连接整个电脑的各个部分,通过运行或执行存储在存储器303内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。

在一实施方式中,设备包括一个或多个处理器303,以及一个或多个存储器305,一个或多个应用程序531。其中所述一个或多个应用程序301被存储在存储器305中并被配置为由所述一个或多个处理器303执行,所述一个或多个应用程序301配置用于执行以上实施例所述的内容推送方法。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括存储器、磁盘或光盘等。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1