求教下 这种情况 可以用什么数据结构呢?

2015-09-30 07:54:36 +08:00
 6god

abc, def, ghi, jkl, mno 。。。。。
一共十组, 要求是后面新添加一个, 前面出去一个。 看起来像是队列, 但是还有一个要求就是, 可以指定读取其中的一个。

1701 次点击
所在节点    问与答
2 条回复
paperpeper
2015-09-30 08:30:27 +08:00
完善现有队列,实现你自己的需求:
1. 每个字母一个元素,基础数据结构使用队列,先入先出能满足第一要求。
2. 内部记录每个元素下标,比如初始时 a 为 0 ,出去两个后,队列为 cde, fgh...,那么 c 的下标仍旧为 2 ,要取当前第 x 个,则返回下标为 2+x*3 的连续 3 个值即可。
theFool
2015-09-30 08:43:31 +08:00
用数组做循环队列?
用头的索引加上指定的索引对总长求余来读取指定的一个。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/224671

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX