使用大数组大小时代码速度极慢



我有一个程序在使用大数组数字时运行得非常慢。

我在最终代码中使用int[3000][3000]String[27000]String[5000]数组。此代码需要很长时间才能运行。这可能是因为数组占用太多空间吗?

这在很大程度上取决于您操作数据的算法的复杂性。 跟。这决定了当您开始在其中抛出更多数据(通过使数组越来越大)时需要多少时间。如果您只是遍历数据,那么它将是 O(n) 的数量级,这意味着它将与给出的数据量成正比;因此,如果将数组的长度加倍,则执行程序所需的时间将增加一倍。如果你,比如说,将每个元素与另一个元素进行比较,这意味着它将在 O(n^2) 的数量级上,所以如果你将数组的长度加倍,处理它们需要大约四倍的时间。

您必须发布您的程序,以便我们了解您的算法是否只是为了让您的计算机处理复杂。

另请参阅:大O表示法

许多因素:

  1. 处理器处理速度。
  2. 内存分配
  3. 3000*
  4. 3000*4 字节 = 36* 10.00.000 字节 = 338 MB
  5. 使用列表

最新更新