【发布时间】:2011-12-19 01:48:01
【问题描述】:
如果遇到以下问题,我想知道我应该使用什么样的数据结构(队列):
- 队列必须具有动态分配的长度(例如 512)。
- 每个新值都保存在队列末尾。
- 添加新值时,如果队列已满,则删除第一个值。如果我将 30 个新值添加到一个完整的队列中,则会自动删除前 30 个。
- 存储的数据类型是数组或其他一些简单对象。
- 我需要能够使用循环快速检索值,始终按顺序(无随机访问)。
这样做的目的是拥有一个固定宽度的数据源,图形将扫描该数据源以绘制其曲线。
编辑:此图旨在显示在 Android 自定义视图上。有没有我可以使用的特定长度来加快循环速度?
EDIT2:添加了“添加新值时,如果队列已满,则删除第一个值。如果我将 30 个新值添加到满队列,前 30 个自动删除。”
【问题讨论】:
-
是否存在一些限制,你永远不会,甚至暂时不会超过堆栈大小?否则地图呢?只需适当地添加和删除?
-
@Randy 地图没有顺序。也许是链接的哈希集,但同样不需要随机访问。
标签: java data-structures