java List 中对象中的数据排序
一个对象中有七个属性分别是七种金额。然后又二十个对象放到一个List里面。然后循环List生成一个table 展示这些数据就类似于一个成绩表吧。竖列是人名,横列是科目,中间是各科分数。我想在各科分数中的前三名后加上【1】、【2】、【3】.用for循环也能实现。但总感觉嵌套循环不好,想找一种更优的算法,希望大家指点一下。谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你要对每种属性排出一个1,2,3,所以排序是必须的,这个无法避免。
所说的嵌套循环感觉不好,这个是代码的实现方式问题以及你个人的感官感觉,不做讨论;
想找个一种更优的算法,主要就需要从排序算法上面做文章,对于你的需求,只需要标注前1,2,3名,则可以考虑利用一个容量为3的大根堆,进行排序,由于堆容量为常数,算法的复杂度为O(N),对每种属性,维护一个这样的大根堆。
至于最后的输出,跟算法没什么关系,API的调用而已。