标签: multidimensional-array

在numpy中将1D数组转换为2D数组

我想通过指定2D数组中的列数将1维数组转换为2维数组.有点像这样的东西:

> 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]])
Run Code Online (Sandbox Code Playgroud)

numpy有没有像我的功能"vec2matrix"那样工作的功能?(我知道你可以像二维数组一样索引一维数组,但这不是我所拥有的代码中的一个选项 - 我需要进行这种转换.)

python arrays numpy matrix multidimensional-array

93
推荐指数
5
解决办法
21万
查看次数

在C中将2d数组归零的最快方法?

我想在C中反复清零一个大的2d数组.这就是我现在所做的:

// Array of size n * m, where n may not equal m
for(j = 0; j < n; j++)
{
    for(i = 0; i < m; i++)
    {  
        array[i][j] = 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试过使用memset:

memset(array, 0, sizeof(array))
Run Code Online (Sandbox Code Playgroud)

但这仅适用于1D阵列.当我打印2D阵列的内容时,第一行是零,但随后我得到了一大堆随机大数字,它崩溃了.

c arrays memset zero multidimensional-array

88
推荐指数
5
解决办法
11万
查看次数

如何从左到右,从上到下排序的二维数组中搜索数字?

我最近接受了这个面试问题,我很好奇它是一个很好的解决方案.

假设我有一个二维数组,其中数组中的所有数字从左到右,从上到下依次递增.

搜索和确定目标号码是否在阵列中的最佳方法是什么?

现在,我的第一个倾向是利用二进制搜索,因为我的数据已经排序.我可以确定O(log N)时间内的数字是否在一行中.然而,正是这两个方向让我失望.

我认为可能有用的另一种解决方案是从中间的某个地方开始.如果中间值小于我的目标,那么我可以确定它在中间的矩阵的左方形部分.然后我沿着对角线移动并再次检查,减小了目标可能存在的方格的大小,直到我对目标数字进行了磨练.

有没有人有解决这个问题的好主意?

示例数组:

从左到右,从上到下排序.

1  2  4  5  6  
2  3  5  7  8  
4  6  8  9  10  
5  8  9  10 11  
Run Code Online (Sandbox Code Playgroud)

algorithm search multidimensional-array

87
推荐指数
6
解决办法
6万
查看次数

将2D阵列映射到1D阵列上

我想用一维数组表示一个二维数组.函数将传递两个指标(x,y)和要存储的值.这两个标记代表一维阵列的单个元素,并相应地设置它.我知道1D数组需要有arrayWidth×arrayHeight的大小,但我不知道如何设置每个元素.

例如,我如何区分(2,4,3)和(4,2,3)?我尝试将数组设置为x*y,但是2*4和4*2将导致数组中的相同位置,我需要它们不同.

c arrays multidimensional-array

81
推荐指数
4
解决办法
14万
查看次数

如何在MATLAB中迭代n维矩阵中的每个元素?

我有个问题.我需要在MATLAB中遍历n维矩阵中的每个元素.问题是,我不知道如何为任意数量的维度做这件事.我知道我可以说

for i = 1:size(m,1)
    for j = 1:size(m,2)
        for k = 1:size(m,3)
Run Code Online (Sandbox Code Playgroud)

等等,但有没有办法为任意数量的维度做到这一点?

arrays iteration matlab matrix multidimensional-array

80
推荐指数
4
解决办法
32万
查看次数

如何找到2D阵列的大小?

如果我声明这个数组......

string[,] a = {
                  {"0", "1", "2"},
                  {"0", "1", "2"},
                  {"0", "1", "2"},
                  {"0", "1", "2"},
              };
Run Code Online (Sandbox Code Playgroud)

然后我可以测量长度

a.Length
Run Code Online (Sandbox Code Playgroud)

这是12.如何测量阵列的尺寸?如果我试试......

a[0].Length
Run Code Online (Sandbox Code Playgroud)

我得到Wrong number of indices inside []; expected 2.是什么赋予了?

.net c# arrays multidimensional-array

79
推荐指数
3
解决办法
8万
查看次数

在Java中初始化多维数组

声明多维数组并为其赋值的正确方法是什么?

这就是我所拥有的:

int x = 5;
int y = 5;

String[][] myStringArray = new String [x][y];

myStringArray[0][x] = "a string";
myStringArray[0][y] = "another string";
Run Code Online (Sandbox Code Playgroud)

java multidimensional-array

78
推荐指数
5
解决办法
40万
查看次数

通过多个键对多维数组进行排序

我试图通过多个键对多维数组进行排序,我不知道从哪里开始.我看着uasort,但不太确定如何为我需要的东西编写函数.

我需要按州,然后是event_type,然后按日期排序.

我的数组看起来像这样:

    Array
(
    [0] => Array
        (
            [ID] => 1
            [title] => Boring Meeting
            [date_start] => 2010-07-30
            [time_start] => 06:45:PM
            [time_end] => 
            [state] => new-york
            [event_type] => meeting
        )

    [1] => Array
        (
            [ID] => 2
            [title] => Find My Stapler
            [date_start] => 2010-07-22
            [time_start] => 10:45:AM
            [time_end] => 
            [state] => new-york
            [event_type] => meeting
        )

    [2] => Array
        (
            [ID] => 3
            [title] => Mario Party
            [date_start] => 2010-07-22
            [time_start] => 02:30:PM
            [time_end] => 07:15:PM
            [state] => …
Run Code Online (Sandbox Code Playgroud)

php arrays sorting multidimensional-array

77
推荐指数
3
解决办法
6万
查看次数

如何声明二维字符串数组?

string[][] Tablero = new string[3][3];
Run Code Online (Sandbox Code Playgroud)

我需要一个3x3阵列安排来保存信息.我如何在C#中声明这个?

c# arrays jagged-arrays multidimensional-array array-initialization

75
推荐指数
10
解决办法
22万
查看次数

将2d numpy数组转换为列表列表

我使用外部模块(libsvm),它不支持numpy数组,只支持元组,列表和dicts.但是我的数据是2d numpy数组.我怎样才能将它转换为pythonic方式,又称没有循环.

>>> import numpy
>>> array = numpy.ones((2,4))
>>> data_list = list(array)
>>> data_list
[array([ 1.,  1.,  1.,  1.]), array([ 1.,  1.,  1.,  1.])]

>>> type(data_list[0])
<type 'numpy.ndarray'>  # <= what I don't want

# non pythonic way using for loop
>>> newdata=list()
>>> for line in data_list:
...     line = list(line)
...     newdata.append(line)
>>> type(newdata[0])
<type 'list'>  # <= what I want
Run Code Online (Sandbox Code Playgroud)

python arrays numpy list multidimensional-array

74
推荐指数
1
解决办法
7万
查看次数