【发布时间】:2017-07-23 10:58:26
【问题描述】:
我必须创建 1000 个堆,每个堆可以包含 10^6 个节点。为了方便访问节点、删除节点和更新节点键,我计划创建一个大小为 10^6 * 1000 的二维数组,我将在其中存储节点的引用。但是,这么大的数组可以用 Java 创建吗? 有没有更好的方法可以在不创建数组的情况下从堆中访问特定节点? 我可以遍历堆的每个节点以搜索我的节点,但是这个过程将是 1 个堆的顺序 n,如果我必须从所有堆中删除特定节点,则该过程需要数量级为 1000*n。
【问题讨论】:
标签: java arrays memory memory-management heap-memory