gpt4 book ai didi

java - 向数组添加值的空间复杂度是多少?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:12:24 24 4
gpt4 key购买 nike

创建数组或 vector 或任何数据结构时,我想问一下空间复杂度;我了解到这个数据结构在创建时占用了内存空间。但是如果然后我循环遍历这个数据结构以在这个数组的每个维度中插入值。它是占用另一个空间还是考虑将值放入已经占用内存空间的数组中。例如:假设创建以下空间复杂度 O(1) 的数组,因为 size 是常量并且创建这两个数组在内存中占用常量空间:

    value1 = new double[size][size];
value2 = new double[size][size];

然后开始在这些数组中插入值:

    Random ra = new Random();

for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {

double g = ra.nextFloat();
double h = ra.nextFloat();

double m = (double) ((double) Math.round(g * 10) / 10.0);
double n = (double) ((double) Math.round(h * 10) / 10.0);

value1[i][j] = m;
value2[i][j] = n;

我知道我在数组中插入值,这些值占用内存空间并且不占用其他空间。

最佳答案

原始数组在创建后不需要额外的空间。然而,创建一个空的 Object 数组只会为引用保留空间。创建要放入数组的对象将占用更多内存用于各个对象本身。

关于java - 向数组添加值的空间复杂度是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58319516/

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