gpt4 book ai didi

C# 数据结构,可以动态调整大小到给定限制的列表,并允许快速访问任何索引

转载 作者:行者123 更新时间:2023-11-30 21:47:21 24 4
gpt4 key购买 nike

我正在为 AI 代理实现一个内存系统。它需要有一个状态转换的内部列表,该列表的上限为某个数字,比如 10000。

如果容量已满,添加新内存应该会自动删除最旧的内存。

重要的是,我还需要能够快速访问此列表中的任何项目。

Queue 的包装器起初看起来很明显,但 Queue 不允许快速访问任何元素。 (O(n))

类似地,从 List 结构的开头删除一个项目需要 O(n)。

LinkedLists 允许快速添加和删除,但同样不允许快速访问每个索引。

数组允许随机访问,但显然它不能动态调整大小并且删除是有问题的。

我看到有人建议使用 HashMap,但我确定如何实现。

建议?

最佳答案

如果你希望队列的长度固定,你可以使用 circular buffer它启用 O(1) 入队、出队和索引操作,并在队列已满时自动覆盖旧条目。

关于C# 数据结构,可以动态调整大小到给定限制的列表,并允许快速访问任何索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38499882/

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