论坛首页 Java企业应用论坛

问一个公告显示的问题

浏览 2774 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-08-25  
当前公告有5条,但其中每个公告的级别不一样.比如有1,2,3这3级.
公告显示需要按级别和发布日期来判断这个公告的显示频率.
列如
名称------级别
公告1------1
公告2------2
公告3------1
公告4------3
公告5------1

显示时级别高的频率高.可能有如下效果

公告4
公告1
公告2
公告5
公告4
公告3
公告2
公告4

级别高的出现的次数多.

这样的问题,应该如何下手,如何思考其算法?

本人不才请求指教.谢谢
   发表时间:2006-08-25  
觉得你的排序有点问题,出现次数看得明白,但是排序规则不太懂。

思路:
clone()
Collections.sort(xx)
0 请登录后投票
   发表时间:2006-08-25  
graying 写道
觉得你的排序有点问题,出现次数看得明白,但是排序规则不太懂。

思路:
clone()
Collections.sort(xx)


..不是用这个方法排序.用这个方法排序是有规则的.而我的近似无规则.我只是希望级别高的出现的次数较多.而并非利用级别来判断谁在前谁在后.
可能是需要一个随机数,然后通过某个算法对级别,发布日期信息进行计算.将级别高的内容出现频率设多.
一个List可能原数据只有5个.我不要5个.我可能会有10个.而10个数据中有重复(原数据5个中重复的数据).但他们的重复的次数是按他们的级别高低设置的.利用某种算法达到这样的要求.
谢谢.指教.
0 请登录后投票
   发表时间:2006-08-28  
前提:如果级别1为基数的话,那么级别n的出现几率为级别1的n倍。
取公告1-n的级别数的总和levelSum,从0到levelSum之间取随机数n,然后从公告1开始顺序减去当前公告的级别数,直到减到某记录n小于等于0了,此次随机结果就是当前记录。
想了个最简单的。等待高手给出更高效的。

---------------
不慎点错。。。发了个新帖。。。被扔回收站了。。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics