我曾经了解一堆Java数据结构,但暂时没有使用它。我正在寻找两种数据结构。
将最后检索到的元素的位置移动到最后位置的数据结构。
移动最后检索到的元素位置的数据结构 到第一个位置。
我试图在互联网上查找它们并查看例如LinkedList,ArrayList,HashMap,HashSet等。它们都提供了描述以及如何实现它们,但没有提到我上面提到的两点。那么哪两个是Java数据结构?
答案 0 :(得分:4)
请参阅API中的java.util.LinkedHashMap:可以创建一个链接的哈希映射,其迭代顺序是上次访问其条目的顺序,从最近访问到最近访问(访问顺序) )。
答案 1 :(得分:1)
如果您需要固定大小的数据结构,请考虑使用LRUMap
from Apache Collections。
这是半答案,因为类似LRUMap的结构只能满足您的要求的第2个。
对于#1,您需要一个类似MRUMap的结构(MRU代表最近最常用的)。作为指南,请参阅此LinkedHashMap
-based implementation,其缺点是只有put()
操作被视为访问权限。