Tag: multidimensional array

从基于值的multidimensional array中删除元素

我想基于一个值从multidimensional array中删除元素。 在这种情况下,如果一个子数组的键“year”的值为2011,那么我想要这个子数组。 只是为了logging:我正在运行PHP 5.2。 我的数组看起来像这样: Array ( [0] => Array ( [filmId] => 61359 [url] => http://www.moviemeter.nl/film/61359 [title] => Unstoppable [alternative_title] => [year] => 2011 [thumbnail] => http://www.moviemeter.nlhttp://img.dovov.comcovers/thumbs/61000/61359.jpg [average] => 0 [votes_count] => 0 [similarity] => 100.00 [directors_text] => geregisseerd door Richard Harrison [actors_text] => met Chen Shilony, Ruben Crow en David Powell [genres_text] […]

如何用某个键sortingmultidimensional array?

这应该是非常简单的,但是怎么走呢? 我想通过一个键来sorting一个multidimensional array,像这样: Array ( [0] => Array ( [iid] => 1 [invitee] => 174 [nid] => 324343 [showtime] => 2010-05-09 15:15:00 [location] => 13 [status] => 1 [created] => 2010-05-09 15:05:00 [updated] => 2010-05-09 16:24:00 ) [1] => Array ( [iid] => 1 [invitee] => 220 [nid] => 21232 [showtime] => 2010-05-09 15:15:00 [location] […]

嵌套数组。 第三层正在消失

我有这个数组: $a = array( "7" => array( "id" => 7, "parent" => 6 ), "6" => array( "id" => 6, "parent" => 5 ), "5" => array( "id" => 5, "parent" => 4 ), "4" => array( "id" => 4, "parent" => 0 ), "3" => array( "id" => 7, "parent" => 2 ), "2" […]

PHP从具有关系数据的数组中创build一个multidimensional array

可能重复: 根据父ID值将数组从一个转换为多维 我正在使用PHP。 我有以下数组有关系数据(父子关系)。 Array ( [5273] => Array ( [id] => 5273 [name] => John Doe [parent] => ) [6032] => Array ( [id] => 6032 [name] => Sally Smith [parent] => 5273 ) [6034] => Array ( [id] => 6034 [name] => Mike Jones [parent] => 6032 ) [6035] => Array ( [id] […]

在形状不可知论的切片的ndarrays

在这篇文章中,我使用术语slice来指代n维数组A的子阵B_i ,使得对于某个维d , size(B_i, d)是1。 A由size(A, d)这样的切片组成,沿着维度d连接。 例如,如果ndims(A)是6, d是3,那么表单的expression式 A(:, :, i, :, :, 🙂 对于i in 1:size(A, d)表示构成1:size(A, d)所有切片(沿着维度d )。 像A(:, :, i, :, :, :)这样的expression式的问题在于它不能像一个维数不等于6的数组那样, A的切片沿维度2,需要一个不同的expression式A(:, i, :, :, :, 🙂 。 这意味着这样的expression式在代码中是无用的,这些代码对于从中提取片段的某个数组的形状是不可知的。 下面的函数是我的matlab-noob试图实现形状不可知的切片。 (名称slice已经被占用,因此我称之为函数hslice ,简称为hyperslice 。该函数的策略是将input数组重新整形为一个合适的三维数组,然后沿着重构数组的第二维取出所需的片,然后重新整形从原始input数组中得到具有切片形状的结果。 function out = hslice(ndarray, d, i) sz = size(ndarray); pfx = sz(1:d-1); % dimensions before d […]

按照自定义顺序排列一个php数组

我有一个数组的数组: Array ( [0] => Array ( [id] = 7867867, [title] = 'Some Title'), [1] => Array ( [id] = 3452342, [title] = 'Some Title'), [2] => Array ( [id] = 1231233, [title] = 'Some Title'), [3] => Array ( [id] = 5867867, [title] = 'Some Title') ) 需要按照特定的顺序进行: 3452342 5867867 7867867 1231233 我将如何去做呢? 我之前已经对数组进行了sorting,并且阅读了大量关于它的其他文章,但它们总是基于比较(即valueA […]

指针地址在Cmultidimensional array中

我搞乱了multidimensional array和指针。 我一直在看一个程序,打印出一个简单的数组的内容和地址。 这是我的数组声明: int zippo[4][2] = { {2,4}, {6,8}, {1,3}, {5,7} }; 我目前的理解是, zippo是一个指针,它可以保存一些其他指针的地址。 默认情况下, zippo保存指针zippo[0]的地址,也可以保存指针zippo[1] , zippo[2]和zippo[3] 。 现在,采取以下声明: printf("zippo[0] = %p\n", zippo[0]); printf(" *zippo = %p\n", *zippo); printf(" zippo = %p\n", zippo); 在我的机器上,输出如下: zippo[0] = 0x7fff170e2230 *zippo = 0x7fff170e2230 zippo = 0x7fff170e2230 我完全理解为什么zippo[0]和*zippo具有相同的值。 它们都是指针,它们都存储整数2的地址(默认值),或者zippo[0][0] 。 但是zippo什么共享相同的内存地址? zippo不应该存储指针zippo[0]的地址吗? Whaaaat?

在一个函数中操作multidimensional array

我在这里读了很多东西,并尝试了很多,但我找不到一个方法来传递一个multidimensional array到一个函数在C中,改变一些值,并以某种方式返回新的数组。 find一种方法将数组传递给另一个函数并执行相同的操作是非常重要的。 我想find一种方法将数组传递给一个函数。然后将它从第一个函数传递到第二个函数,在那里做一些事情(也许是打印,也许更改值),然后再次使用它到第一个函数,最后使用在主数组中。 我最后的尝试是: void func(int multarray[][columns]){ multarray[0][0]=9; } int main(){ int rows; int columns; int multarray[rows][columns]; func(multarray); return 0; } 我也试过这个: void func(int multarray[rows][columns]){ multarray[0][0]=9; } int main(){ int rows; int columns; int multarray[rows][columns]; func(multarray); return 0; } 我也试过这个: int getid(int row, int x, int y) { return (row*x+y); } void printMatrix(int*arr, int […]

按特定值分组multidimensional array?

希望我能正确解释 我有一个multidimensional array,并试图根据一个键的值来对它们进行分组。 所以,我试图把他们按等级分组,但事实上我并不知道这个等级。 所以,不是我可以把它放在一个for循环中,并说$ i <7,因为我不知道7是关键的最大值,坦率地说,我不知道这是我即使我做了也需要做… Array ( [0] => Array ( [cust] => XT8900 [type] => standard [level] => 1 ) [1] => Array ( [cust] => XT8944 [type] => standard [level] => 1 ) [2] => Array ( [cust] => XT8922 [type] => premier [level] => 3 ) [3] => Array ( […]

如何在C / C ++中最好地处理dynamicmultidimensional array?

在C和/或C ++中操纵dynamic(所有维度在运行时间之前都是未知的)的multidimensional array是什么被接受/最常用的方法。 我试图find最干净的方法来完成这个Java代码的function: public static void main(String[] args){ Scanner sc=new Scanner(System.in); int rows=sc.nextInt(); int cols=sc.nextInt(); int[][] data=new int[rows][cols]; manipulate(data); } public static void manipulate(int[][] data){ for(int i=0;i<data.length;i++) for(int j=0;j<data[0].length.j++){ System.out.print(data[i][j]); } } (从std_in中读取只是为了阐明直到运行时才知道维度)。 编辑:我注意到,这个问题是相当stream行,即使它是相当古老。 我实际上并不同意顶尖的投票答案。 我认为C的最佳select是使用一个单维数组,如下面的Guge所说:“你可以分配行cols sizeof(int)并通过table [row * cols + col]来访问它”。 C ++有很多select,如果你真的喜欢boost或stl,那么下面的答案可能会更好,但最简单也可能是最快的select是使用C中的单维数组。 在C和C ++中另一个可行的select,如果你想[] []语法是lillq的答案在底部是手动构build有很多malloc的数组。