-4

我创建了一个名为 randomQueue 的数据类型,它使任何对象入队,并随机从中出队随机项目生成器的 api 应该如下

enqueue(Item item)
dequeue()
isEmpty()
size()
private resize()
private shrink()

运行时间应该摊销我认为两者的性能在两种实现中应该是相同的,但我想知道内存怎么样,有没有办法计算我的程序使用的内存而不是计算每一行代码的内存使用情况?PS我用java。

4

2 回答 2

1

假设一个 32 位 HotSpot VM,ajava.util.HashSet每个元素大约需要 32 个字节,而一个数组大约需要 4 个字节。如果您要重新实现其中一个结构,当然,这些数字对您没有任何用处。

于 2013-02-20T22:38:43.137 回答
0

这两种不同的结构在内存消耗方面确实没有明显的优势。哈希集通常会更快地检索数组,因为在数组中您必须遍历所有项,直到找到您要查找的项并将哈希集分组。

于 2013-02-20T22:14:41.830 回答