math - 数学和编程中的向量之间的区别

标签 math vector

也许这个问题更适合网站的数学部分,但我想 stackoverflow 也适合。在数学中,向量有位置和方向,但在编程中,向量通常定义为:

Vector v (3, 1, 5);

方向和大小在哪里?对我来说,这是一个点,而不是一个向量……那是什么?可能我没有得到任何东西,所以如果有人能向我解释这一点,我们将不胜感激。

最佳答案

如果我们在笛卡尔坐标下工作,并假设 (0,0,0)为原点,然后点 p=(3,1,5)可以写成

enter image description here

哪里i , jkx 中的单位向量, yz方向。为方便起见,单位向量从编程结构中删除。

向量的大小为

enter image description here

它的方向余弦是

enter image description here

分别,这两者都可以通过编程来完成。您还可以使用点积和交叉积,我相信您知道这一点。所以编程和数学的用法是一致的。符号的差异主要是因为方便。

然而作为 Tomas pointed out ,在编程中,定义一个由字符串或对象组成的向量也是很常见的,它确实没有数学意义。您可以将此类向量视为一维数组或可以通过索引轻松访问或操作的项目列表。

关于math - 数学和编程中的向量之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6170854/

相关文章:

c++ - 如何到达 2d std::vector (`std::vector< std::vector<T>>` ) 的第 N 个元素?

c++ - vector 不是模板?

r - 通过非 NA 值合并两个向量

math - 有没有办法扭转atan2的效果?

python - Pandas 根据另一列 total sum max 最大化一列的总值

Python:数学表达式解析

java - Java 中 vector 可以引用二维数组吗?

python - 需要一个合适的数据结构或索引,以便根据 3d 点和重要性因素快速查找用户

xml - 带绝对值的 XSLT 条件测试

c++ - 如何将 vector<unique_ptr<T>> 复制到独立 vector<T*>