标签: matrix

在c ++中创建矩阵的正确方法

我想为图形创建一个邻接矩阵.由于我读过matrix[x][y]因为不检查范围而使用表单数组是不安全的,所以我决定使用stl的vector模板类.我需要存储在矩阵中的是布尔值.所以我的问题是,如果使用std::vector<std::vector<bool>* >*产生过多的开销或者有一种更简单的矩阵方式以及如何正确初始化它.

编辑:非常感谢您的快速解答.我刚才意识到,那当然我不需要任何指针.矩阵的大小将在开始时初始化,并且在程序结束之前不会更改.这是一个学校项目,所以如果我写"好"代码会很好,虽然技术上性能不是太重要.使用STL很好.使用像boost这样的东西可能不受欢迎.

c++ stl graph matrix data-structures

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

用于.NET的矩阵库

我正在为.NET/C#寻找一个好的(经过良好测试,功能齐全,界面友好的)矩阵库.我在这里的主要要求只是它应该是免费的(我不特别在意它是否是这种情况下的开源)并且最好支持稀疏矩阵运算.强制性要求是所有基本操作(例如乘法,换位,反演)以及寻找特征值和特征向量.用于发现特征值的数值而非/以及分析方法的实现,特别是用于稀疏矩阵的Lanczos算法,将是非常优选的,因为我将要处理的矩阵非常大(长度为10,000向上),因为正方形,也相当稀疏.这么说,我可能会在那里要求一点,所以对合理完整的矩阵库的任何建议都会很棒.

现在我知道Python有一两个有用的库用于这样的任务(即NumPy/SciPy),但遗憾的是,该领域似乎缺乏.NET.

稍微搜索了以下.NET的库,我可以使用它:

但是,由于我没有使用任何这些库或其他任何经验(并且没有足够的时间在任何情况下正确地检查每个库),我非常感谢这里有人可以讨论他们关于各种库的建议,他们的优点/缺点,特别是关于我的用途的适用性,以及他们的一般经验.

求助于MatLab总是一个选择,但不是首选,因为如果我可以直接将矩阵数学与我的程序集成,那将更加方便.

.net math matrix sparse-matrix

28
推荐指数
1
解决办法
2万
查看次数

Haskell线性代数?

我开始测试Haskell的线性代数.有没有人为此目的提供最佳套餐的建议?使用Haskell进行基本矩阵操作的任何其他好资源?

haskell wiki 为此列出了几个资源.我目前专注于hmatrixbindings-gsl,两者看起来都很有希望.

haskell matrix linear-algebra gsl

28
推荐指数
1
解决办法
6100
查看次数

如何有效地搜索有序矩阵?

我有一个xy矩阵,其中每行和每列是按升序排列如下面给出的.

1   5   7    9
4   6   10   15
8   11  12   19
14  16  18   21
Run Code Online (Sandbox Code Playgroud)

如何搜索此矩阵中的数字O(x+y)

我被问到这个问题接受采访,但无法弄明白.很想知道它是否可以完成.

arrays algorithm search matrix

28
推荐指数
2
解决办法
2730
查看次数

哪一行在0-1矩阵中最多1,所有1在"左边"?

问题

nxn矩阵的每一行由1和0组成,因此在任何行中,所有1都在任何0之前.在O(n)中查找包含大多数1的行.

1 1 1 1 1 0  <- Contains maximum number of 1s, return index 1
1 1 1 0 0 0
1 0 0 0 0 0
1 1 1 1 0 0
1 1 1 1 0 0
1 1 0 0 0 0
Run Code Online (Sandbox Code Playgroud)

我在算法书中发现了这个问题.我能做的最好的是O(n logn)时间.如何在O(n)中执行此操作?

algorithm math matrix

28
推荐指数
2
解决办法
7328
查看次数

使用WebGL着色器语言(GLSL)在JavaScript中进行任意向量​​数学

WebGL着色器语言(GLSL)是一种用于多维向量数学的非常强大的工具.

是否有可能使用JavaScript(在Web浏览器中运行)进行私有非3D计算?获取数据是可能的,但在着色器计算完成后有没有办法将数据输出到JavaScript?

不需要实际绘图,只计算矢量.(我正在研究用JavaScript编写的硬件加速重力模拟器的想法.)

谢谢!


在新闻中:Khronos似乎正在开发WebCL,它将是OpenCL的JavaScript可访问版本.这正是我要找的,但需要一些时间......

javascript math glsl matrix webgl

28
推荐指数
2
解决办法
6580
查看次数

使用Matrix旋转后获取坐标的新位置

我想知道如何使用矩阵在旋转后获取矩形内的坐标的新位置.我想做的是:

  1. 定义一个矩形
  2. 在该矩形内定义坐标
  3. 旋转矩形
  4. 旋转后获取坐标的新位置

我无法弄清楚的部分是2和4.任何想法?

android rotation matrix coordinates

28
推荐指数
2
解决办法
2万
查看次数

Matlab中单元格和矩阵有什么区别?

Matlab中的单元格(即with { })和矩阵(即with [ ])之间有什么区别?

matlab matrix

28
推荐指数
1
解决办法
3万
查看次数

如何检查numpy矩阵列中的所有值是否相同?

我想检查numpy数组/矩阵的列中的所有值是否相同.我试图用reduce的的ufunc equal,但它似乎并没有在所有情况下的工作:

In [55]: a = np.array([[1,1,0],[1,-1,0],[1,0,0],[1,1,0]])

In [56]: a
Out[56]: 
array([[ 1,  1,  0],
       [ 1, -1,  0],
       [ 1,  0,  0],
       [ 1,  1,  0]])

In [57]: np.equal.reduce(a)
Out[57]: array([ True, False,  True], dtype=bool)

In [58]: a = np.array([[1,1,0],[1,0,0],[1,0,0],[1,1,0]])

In [59]: a
Out[59]: 
array([[1, 1, 0],
       [1, 0, 0],
       [1, 0, 0],
       [1, 1, 0]])

In [60]: np.equal.reduce(a)
Out[60]: array([ True,  True,  True], dtype=bool)
Run Code Online (Sandbox Code Playgroud)

为什么第二种情况下的中间列也要评估True,而它应该是False

谢谢你的帮助!

python numpy matrix

28
推荐指数
2
解决办法
4万
查看次数

眼睛空间坐标究竟是什么?

当我学习OpenGL时,我常常偶然发现所谓的眼睛空间坐标.

如果我是对的,你通常有三个矩阵.模型矩阵,视图矩阵和投影矩阵.虽然我不完全确定背后的数学是如何工作的,但我确实知道转换坐标到世界空间,视图空间和屏幕空间.

但是眼睛空间在哪里,我需要将哪些矩阵转换为眼睛空间?

opengl camera projection matrix coordinates

28
推荐指数
3
解决办法
2万
查看次数