java List 中对象中的数据排序

发布于 2022-08-27 13:13:23 字数 170 浏览 6 评论 0

一个对象中有七个属性分别是七种金额。然后又二十个对象放到一个List里面。然后循环List生成一个table 展示这些数据就类似于一个成绩表吧。竖列是人名,横列是科目,中间是各科分数。我想在各科分数中的前三名后加上【1】、【2】、【3】.用for循环也能实现。但总感觉嵌套循环不好,想找一种更优的算法,希望大家指点一下。谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薄情伤 2022-09-03 13:13:23

你要对每种属性排出一个1,2,3,所以排序是必须的,这个无法避免。

所说的嵌套循环感觉不好,这个是代码的实现方式问题以及你个人的感官感觉,不做讨论;

想找个一种更优的算法,主要就需要从排序算法上面做文章,对于你的需求,只需要标注前1,2,3名,则可以考虑利用一个容量为3的大根堆,进行排序,由于堆容量为常数,算法的复杂度为O(N),对每种属性,维护一个这样的大根堆。

至于最后的输出,跟算法没什么关系,API的调用而已。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文