随机插入,随机获取C#集合

时间:2011-08-22 11:06:23

标签: c# data-structures collections

我需要一个C#集合,我可以从中快速挑选一个随机元素,同时添加新元素。这是一个拼字游戏的字母块。我应该使用哪一个?

4 个答案:

答案 0 :(得分:4)

您可以使用List<T>。 这取决于你想要保留在该列表中的内容。

答案 1 :(得分:2)

任何实现IList(或更可能是IList<T>)的内容都可以通过索引引用。很容易在0 < n < list.Count-1范围内选择一个随机数,并从列表中获取该项目。

例如/

// assumes 'random' is an instance of System.Random
myRandomElement = myList[random.Next(0,myList.Count-1)]

答案 2 :(得分:2)

Dictionary

  

Dictionary泛型类提供了一个映射   一组值的键集。每增加一本字典   由值及其关联键组成。 通过检索值   使用它的键非常快,接近O(1),因为   字典类实现为哈希表。

编辑:好的,我认为你需要指定键或其他东西。

List&lt;&gt;有什么问题? ?

答案 3 :(得分:0)

如果你想要速度,我建议使用词典