gpt4 book ai didi

c# - 实现索引队列的有效方法(可以在 O(1) 时间内通过索引检索元素)?

转载 作者:太空狗 更新时间:2023-10-29 17:39:34 25 4
gpt4 key购买 nike

根据 .NET queue ElementAt performance,使用 ElementAt 按索引访问项目显然不是一个合理的选择.

是否有适合此要求的替代通用数据结构?

我的队列有固定容量。

根据 MSDN entry on the Queue class ,“此类将队列实现为循环数组”,但它似乎没有公开任何类型的索引属性。

更新:我找到了C5's implementation of a CircularQueue .它似乎符合要求,但如果可能的话,我宁愿不必导入另一个外部库。

最佳答案

您可以使用 cyclic array . IE。在数组中实现队列。

实现非常简单,您不需要使用外部库,只需自己实现即可。提示:使用 m_beginIndex, m_nElements 成员比使用 m_beginIndex, m_endIndex 更容易。

关于c# - 实现索引队列的有效方法(可以在 O(1) 时间内通过索引检索元素)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6816436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com