最好是Java。我对数据结构(如集合和映射)的实现以及排序等算法感兴趣,这些算法具有内存效率,不一定非常快。如果内存量和分配数量很少,我可以使用O(n ^ 2)获取和存储。那里有什么东西吗?
答案 0 :(得分:3)
对于与Java标准结构相比非常紧凑的结构,可以在位级工作。当然,这在很大程度上取决于你的数据,我想这些代码实际上并不是通用的。我一无所知,一般都无法做到。您可能必须开发它(可能使用BitSet类)。
Java中的某些东西枚举类非常紧凑:EnumSet和EnumMaps 。它们非常紧凑,速度极快。想法:
答案 1 :(得分:2)
O(n ^ 2)似乎真的过分了。您对数据结构的期望是什么?简单地使用向量将为您提供存储和检索的O(n)最坏情况以及O(n)空间要求。 - 后者无法真正减少(除非压缩数据结构,但为了工作,您需要提供很多有关您的数据域的更多信息),那么为什么不简单地使用向量? / p>