【发布时间】:2011-10-14 15:57:11
【问题描述】:
我有一个算法需要多次迭代,每次迭代都会对集合中的项目进行评分并删除得分最高的项目。
我可以用初始填充填充Vector,不断将其替换为var,或者选择一个可变集合作为val。哪个可变集合最符合要求?
【问题讨论】:
-
物品的顺序重要吗?
-
是的 - 它们按优先级顺序排列,但是我必须选择符合其他标准的最高优先级,因此我们可能会在找到要删除的那个之前按照列表的顺序进行操作。
-
大概有多少次迭代,初始集合有多大?进程会一直运行到集合中只剩下一个元素,还是元素比迭代多得多?
-
哦,评分函数的计算成本高吗?
-
另一个要问的问题是您是否真的需要立即删除元素,或者您是否可以忽略已评分的元素然后执行在某个时候进行批量清理。