本发明涉及数据处理,具体涉及一种多级循环递进式抽奖系统。
背景技术:
1、在现今的商业环境中,抽奖活动已成为商家吸引和保持用户活跃度的一种常见策略。商家(或称为业务方)通过精心策划与业务活动紧密结合的抽奖活动,旨在为用户提供额外的激励和乐趣,同时增强品牌的吸引力。
2、这些抽奖活动通常与具体的业务活动相关联,用户需要参与这些活动以获取抽奖的资格或机会。业务活动可能包括在线购物、完成调查问卷、分享社交媒体内容、参加线下活动等。通过这些活动,商家不仅增加了用户的参与度和粘性,还收集到了宝贵的用户数据和市场反馈。
3、在现有抽奖方式中,将参与抽奖的用户全部统计到数据库中,并随后进行随机抽奖的做法,在面临持续性、大量用户参与的情况下,存在一系列不公平性的问题。
4、具体的不公平性问题主要体现在如下内容:
5、名次和时间影响:当用户按照特定顺序或时间参与抽奖时,抽奖算法可能会无意识地偏向于先参与或后参与的用户。这种偏差可能是由于算法设计不当或系统随机性的局限导致的。
6、暗箱操作与人为控制:在中心化的抽奖系统中,管理者或拥有系统访问权限的人员可能有机会通过修改算法或数据来人为控制中奖结果。这种不透明性增加了用户对抽奖公正性的质疑。
7、批量处理偏差:当一次性处理大量用户数据时,随机算法的统计偏差可能会放大,导致某些用户群体或个体中奖概率的不均衡。
8、基于此,研究一种多级循环递进式抽奖系统是必要的。
技术实现思路
1、鉴于此,本发明的目的在于提供一种多级循环递进式抽奖系统,有效的解决了现有的抽奖系统在面对持续性、大量用户参与的情况下,存在不公平性的问题。
2、为实现上述目的,本发明所采用的技术方案是:一种多级循环递进式抽奖系统,包括数据输入模块、数据接收模块、一级抽奖模块和二级抽奖模块;
3、数据输入模块:响应于用户请求,并为用户提供用户信息输入端口;
4、数据接收模块:接收用户输入的信息,对信息加密处理,并转化为加密格式;
5、一级抽奖模块:包括一级标准组,用户信息按照录入时间依次存入一级标准组中,在用户数据录入时,为每一用户提供相应的标签,当一级标准组满员后执行一级抽奖逻辑,并得到一级中奖名单;
6、当录入满员时,跳转至下一组进行有序录入;
7、二级抽奖模块:包括二级标准组,当一级标准组累积至约定数量后,将累积的一级标准组进行合并形成二级标准组;
8、将合并的二级标准组执行二级抽奖逻辑,并得到二级中奖名单。
9、进一步的,还包括三级标准组,当二级标准组累积至约定数量后,将该部分二级标准组进行合并形成三级标准组;将合并的三级标准组执行三级抽奖逻辑,并得到三级中奖名单。
10、进一步的,还包括初始化模块,初始化模块用于对一级标准组存储人数、递进合并组数、总组数进行设置和对二级标准组的递进合并组数进行设定。
11、进一步的,所述标签为序列标签,通过序列标签的数值与储存人数进行对比来判断一级标准组的录入是否满员,当录入满员后,新建一组一级标准组,继续进行录入。
12、进一步的,所述一级抽奖逻辑包括调用模块和一级随机抽奖模块,一级标准组满员后,调用模块向一级随机抽奖模块发出调用请求,以该组标准组的组内数据作为抽奖数据库,执行一次抽奖;
13、所述二级抽奖逻辑包括数组合并模块、调用模块和二级随机抽奖模块,二级标准组通过数组合并模块将多个一级标准组合并为一个数据库,并通过调用模块调用二级随机抽奖模块,对该数据库进行一次抽奖。
14、进一步的,所述一级随机抽奖模块在执行时首先对数据源进行一次随机排序得到随机排序数列,然后执行另一随机排序,并得到随机的索引序列,以索引序列的序列行号索引,取出随机排序数列的对应的元素作为中奖序列。
15、进一步的,所述一级随机抽奖模块以一级标准组的组内人员为标的执行一次随机抽奖,所述二级随机抽奖模块以二级标准组所容纳的一级标准组数量为标的执行一次抽奖,确定组数后以一级标准组的组内人员为标的执行一次随机抽奖。
16、进一步的,还包括根据抽奖结果生成查询目录,并显示在展示页面。
17、进一步的,还包括用户使用终端,用户通过使用终端向数据输入模块发送用户信息。
18、一种多级循环递进式抽奖系统的抽奖方法:包括如下步骤:
19、步骤一,初始化
20、对一级标准组存储人数、递进合并组数、总组数进行设置和对二级标准组的递进合并组数进行设定;
21、步骤二,数据录入
22、用户从数据输入模块输入数据,并在数据接收模块中进行加密处理,随后存入一级标准中;
23、步骤三,一级抽奖判定
24、判断一级标准组是否满员,如果满员,则一级标准组执行一级抽奖逻辑,并获得一级中奖结果,将一级中奖结果存储至一级中奖名单;
25、步骤四,二级抽奖判定
26、当一级标准组累积至约定数量后,将该部分一级标准组进行合并形成二级标准组,对二级标准组执行二级抽奖逻辑,并获得二级中奖结果,将二级中奖结果存储至二级中奖名单;
27、步骤五,三级抽奖判定
28、当二级标准组累积至约定数量后,将该部分二级标准组进行合并形成三级标准组,对三级标准组执行三级抽奖逻辑,并获得三级中奖结果,将三级中奖结果存储至三级中奖名单;
29、步骤六,满员判定
30、判断当前人数是否满员,如果满员则停止录入,并提示本次抽奖结束;如果不满员,则新建一级标准组,继续录入。
31、上述技术方案的有益效果是:针对持续性输入和大量的抽奖模式,本发明以时间轴为参考标准,将用户按照录入时间依次划分为多组,每组进行独立的抽奖逻辑,化整为零,随着用户录入持续性的进行抽奖,把参加抽奖的大规模的人群以参与时间顺序为标准平均分布成多个小规模的人群进行抽奖,在保证中奖公平性的前提下,减少了对抽奖系统的负担,避免了系统卡顿。
32、本发明通过用户终端填写抽奖参与信息,并上传给数据输入模块,数据输入模块协同用户信息和时间信息,对用户信息进行加密,并形成便于进行数据存储的加密格式,当用户中奖后通过反向解码能够映射至相应用户,通过对数据进行处理能够为抽奖提供简便的数据库,减少了抽奖系统处理数据的负担。
33、由此,在面对目前持续形参与抽奖的方式,本发明以时间轴对参考对象,对用户进行划分,并分配至一级标准组,进行零平均分组、分散抽奖,在保证中奖公平性的前提下,减少了对抽奖系统的负担避免了系统卡顿,提高了系统运行的流畅度。
1.一种多级循环递进式抽奖系统,其特征在于:包括数据输入模块、数据接收模块、一级抽奖模块和二级抽奖模块;
2.根据权利要求1所述的多级循环递进式抽奖系统,其特征在于:还包括三级标准组,当二级标准组累积至约定数量后,将该部分二级标准组进行合并形成三级标准组;将合并的三级标准组执行三级抽奖逻辑,并得到三级中奖名单。
3.根据权利要求2所述的多级循环递进式抽奖系统,其特征在于:还包括初始化模块,初始化模块用于对一级标准组存储人数、递进合并组数、总组数进行设置和对二级标准组的递进合并组数进行设定。
4.根据权利要求3所述的多级循环递进式抽奖系统,其特征在于:所述标签为序列标签,通过序列标签的数值与储存人数进行对比来判断一级标准组的录入是否满员,当录入满员后,新建一组一级标准组,继续进行录入。
5.根据权利要求3所述的多级循环递进式抽奖系统,其特征在于:所述一级抽奖逻辑包括调用模块和一级随机抽奖模块,一级标准组满员后,调用模块向一级随机抽奖模块发出调用请求,以该组标准组的组内数据作为抽奖数据库,执行一次抽奖;
6.根据权利要求5所述的多级循环递进式抽奖系统,其特征在于:所述一级随机抽奖模块在执行时首先对数据源进行一次随机排序得到随机排序数列,然后执行另一随机排序,并得到随机的索引序列,以索引序列的序列行号进行索引,取出随机排序数列的对应的元素作为中奖序列。
7.根据权利要求6所述的多级循环递进式抽奖系统,其特征在于:所述一级随机抽奖模块以一级标准组的组内人员为标的执行一次随机抽奖,所述二级随机抽奖模块以二级标准组所容纳的一级标准组数量为标的执行一次抽奖,确定组数后以一级标准组的组内人员为标的执行一次随机抽奖。
8.根据权利要求5所述的多级循环递进式抽奖系统,其特征在于:还包括根据抽奖结果生成查询目录,并显示在展示页面。
9.根据权利要求1所述的多级循环递进式抽奖系统,其特征在于:还包括用户使用终端,用户通过使用终端向数据输入模块发送用户信息。
10.根据权利要求1所述的多级循环递进式抽奖系统的抽奖方法,其特征在于:包括如下步骤: