标签: java caching data-structures
我想建立一个数据结构,其插入,删除,搜索都是O(1)。 缓存删除缓存中请求最少的值。并且具有给定大小的值。 任何想法?
我想到了树+哈希表或skiplist +哈希表(缓存大小的哈希表)。
谢谢
答案 0 :(得分:5)
不要自己设计数据结构,而应该查看Google Guava的Caches。它们的实现基于并发的hashmap,它对上面列出的操作具有O(1)复杂度。它们还有许多其他配置选项可用于缓存,例如生存时间和并发级别。这些选项可通过CacheBuilder界面获得。