gpt4 book ai didi

java - 除了 Array/ArrayList 之外,还有其他方法可以保存矩阵的元素吗

转载 作者:行者123 更新时间:2023-11-29 06:32:43 25 4
gpt4 key购买 nike

假设我们有如下整数: (1, 2)=10, (2,3)=20, (3, 4)=30等等……

这些整数分布在一个维度为 2000*2000 的矩阵中。

但我只需要该矩阵的 4000-6000 个元素及其索引(即它们的位置 (i, j))。矩阵中的其他元素为零。所以我不需要它们。除了使用二维 Array/ArrayList 之外,是否有其他好的方法来保存这些元素及其索引,因为我们可以轻松地调用和重用元素及其索引?

使用 Array/ArrayList 会消耗大量内存。

最佳答案

拥有这样大小的二维数组会浪费内存,因为它有 4,000,000 个元素。因为您只需要 4000-6000 个元素,所以这个数组会非常稀疏。

您可以使用 HashMapPoint 映射到 Integer

Map<Point, Integer> points = new HashMap<>();

您需要确保您有一个 Point 类可以正确覆盖 hashcodeequals

HashMap 只会存储您放入其中的 4000-6000 个点。

关于java - 除了 Array/ArrayList 之外,还有其他方法可以保存矩阵的元素吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28884254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com