【发布时间】:2012-07-14 18:46:05
【问题描述】:
我有一个字典数组。每个字典都保存有关单个音轨的数据。我的应用程序使用星级评分系统,因此用户可以给曲目评分 1-5 星。每个字典的每个音轨都有自己的评分数据,如下所示:
-
avgRating(例如:4.6) -
rating_5_count(整数表示一首曲目获得了多少 5 星评级) rating_4_countrating_3_countrating_2_countrating_1_count
我正在尝试在我的应用中创建一个 Top Charts 表格。我正在创建一个新数组,其中包含按avgRating 排序的对象。我了解如何使用NSSortDescriptors 对对象进行排序,但这是我遇到麻烦的地方...
如果我只使用avgRating 作为排序描述符,那么如果一首曲目仅获得一个 5 星评级,它将跳到排行榜的顶部并击败可能有数百票的 4.9 的曲目.
我可以在 Top Charts 数组中设置最低投票数以防止这种情况发生,但我不想这样做。然后,当我获得更多用户时,我将不得不更改最低投票数。
这有点主观,但是有没有人对如何有效地对数组进行排序有任何其他建议?
【问题讨论】:
标签: objective-c ios arrays sorting