Tag: multidimensional array

是不是double 相当于** double?

我问这是因为我的程序有两个函数来乘以matrix,他们只乘以4×4和4x1matrix。 标题是: double** mult4x1(double **m1, double **m2); double** mult4x4(double **m1, double **m2); 他们做m1 * m2并返回一个**双,下面是一个4×4乘法片段。 double** mult4x4(double **m1, double **m2){ double** result = (double**) malloc(sizeof(double)*4); for (int i = 0; i < 4; i++) { result[i] = (double*) malloc(sizeof(double)*4); } …multiply… return result; } mult4x1和mult4x4之间的区别仅在它们内部使用的索引中。 我有这3个matrix: double m1[4][4] = { {2, 3, 5, 6}, {9, […]

将multidimensional array转换为一维数组

现在我一直在这个问题上磕头。 我有这个multidimensional array: Array ( [0] => Array ( [0] => foo [1] => bar [2] => hello ) [1] => Array ( [0] => world [1] => love ) [2] => Array ( [0] => stack [1] => overflow [2] => yep [3] => man ) 我需要得到这个: Array ( [0] => foo [1] => […]

使用Java中的multidimensional array填充数组

如何在Java中填充multidimensional array而不使用循环? 我试过了: double[][] arr = new double[20][4]; Arrays.fill(arr, 0); 这导致java.lang.ArrayStoreException: java.lang.Double 提前致谢!

为什么Java没有真正的multidimensional array?

对于那些不想要背景的人来说,TL; DR版本是以下具体问题: 题 为什么Java没有实现真正的multidimensional array? 有一个坚实的技术原因吗? 我在这里错过了什么? 背景 Java在语法级别有multidimensional array,可以声明 int[][] arr = new int[10][10]; 但这似乎并不是人们所期望的。 而不是让JVM分配一个足以存储100个int的连续块,它是以int数组的forms出现的:所以每一层都是连续的RAM块,但是整体来说不是这样。 访问arr[i][j]是相当慢的:JVM必须 find存储在arr[i]的int[] arr[i] ; 索引这个来find存储在arr[i][j]的int 。 这包括查询一个对象从一层到另一层,这是相当昂贵的。 为什么Java这样做 在一个层面上,不难看出为什么不能通过简单的扩展和增加查找来优化,即使它们全部分配在一个固定块中。 问题是, arr[3]是所有它自己的参考,它可以被改变。 所以虽然数组的大小是固定的,但我们可以很容易地写出来 arr[3] = new int[11]; 现在规模和增加是因为这个层次的增长而被拧紧的。 你需要知道在运行时是否所有东西都和以前一样大小。 此外,当然,这将被分配到RAM中的其他地方(这将是,因为它比它所替代的要大),所以它甚至不是在缩放和添加的正确位置。 有什么问题呢 在我看来,这是不理想的,这有两个原因。 首先,它很慢 。 对于多维情况( int[1000000]和int[100][100][100] ),使用这些方法对单维或multidimensional array的内容进行求和的testing花费了近两倍的时间 (714秒vs 371秒) int[100][100][100] ,用随机的int值填充,运行1000000次,热caching)。 public static long sumSingle(int[] arr) { long […]

Java ArrayList的数组?

我想创build一个没有固定大小的multidimensional array。 我需要能够添加String[2]项目。 我曾试着看: private ArrayList<String[]> action = new ArrayList<String[2]>(); 但是这不起作用。 有没有人有任何其他的想法?

在MongoDB中查询数组数组

说,我有这样的文件.. "ID" : "fruit1", "Keys" : [["apple", "carrot", "banana]] 如何查询Keys =“carrot”。 以下语法都不起作用。 db.myColl.results.find({ "Keys" : "carrot" }); db.myColl.results.find({ "Keys" : [["carrot"]] }); 以下作品,但没有帮助。 db.myColl.results.find({ "Keys" : [["apple", "carrot", "banana]]}); 任何指向这个查询的指针都会有帮助。 谢谢。

铸造Arrays.asList导致exception:java.util.Arrays $ ArrayList不能转换为java.util.ArrayList

我是新来的Java,并试图了解为什么第一个代码片段不会导致此exception,但第二个。 既然在这两种情况下都将string数组传递给Arrays.asList,那么这两个片段是不是应该产生一个exception呢? Exception in thread "main" java.lang.ClassCastException: java.util.Arrays$ArrayList cannot be cast to java.util.ArrayList 第一个片段(不会导致例外): ArrayList<ArrayList<String>> stuff = new ArrayList<ArrayList<String>>(); String line = "a,b,cdef,g"; String delim = ","; String[] pieces = line.split(delim); stuff.add((ArrayList<String>) Arrays.asList(pieces)); 第二个片段(导致以上例外): ArrayList<ArrayList<String>> stuff = new ArrayList<ArrayList<String>>(); String[] titles = {"ticker", "grade", "score"}; stuff.add((ArrayList<String>) Arrays.asList(titles)); 如果相关,我在Eclipse Helios中使用JavaSE 1.6。

计算二维数组中的维数平均值

我有一个这样的数组: a = [[40, 10], [50, 11]] 我需要分别计算每个维度的均值,结果应该是这样的: [45,10.5] 45是a[*][0]的均值, 10.5是“a [*] [1]的均值。 什么是解决这个问题的最优雅的方式,而不是一个循环?

Rubymultidimensional array

也许这只是我缺乏在这里find问题的能力,但是我找不到在Ruby中如何创buildmultidimensional array的任何事情。 有人请给我一个例子,如何做到这一点?

将一维数组转换为numpy的二维数组

我想通过指定matrix中的列数将一维数组转换为matrix。 有些东西可以这样工作: > import numpy as np > A = np.array([1,2,3,4,5,6]) > B = vec2matrix(A,ncol=2) > B array([[1, 2], [3, 4], [5, 6], [7, 8]]) numpy是否具有像我制作的函数“vec2matrix”一样的function? (据我所知,你可以像一个matrix索引一维数组,但这不是在我有代码的选项 – 我需要进行此转换)