matlab里的scalar,scalar_scalar与vector之间的区别

scalar与vector之间的区别

有些物理量,既要由数值大?包括有关的单位),又要由方向才能完全确定。这些量之间的运算并不遵循一般的代数法则,而遵循特殊的运算法则。这样的量叫做物理矢量。

有些物理量,只具有数值大小(包括有关的单位),而不具有方向性。这些量之间的运算遵循一般的代数法则。这样的量叫做物理标量。

简单来说,标量是指只有大小,没有方向的物理量。如:质量、时间以及我们这里学习的功等。

与它相对应的是矢量,矢量是指既有大小又有方向的物理量,如力、位移、速度、

冲量、动量等等。

参考资料:

http://zhidao.baidu.com/question/154946.html

scalar是什么意思

scalar

D.J.[ˈskeilə]

K.K.[ˈskelɚ, -ˌlɑr]

adj.

梯状的,分等级的,数量的,标量的

n.

数量,标量

谁能解释下这几种数据类型吗? vector和array有什么不同 scalar又是如何的

vector 指矢量,即具有大小和方向的物理量,如速度、动量、力。

array 指数组/阵列,即按量值大小直线形排列或数横为行纵为列的矩形排列的数字数据。

scalar 指标量,即一个完全由其大小决定而没有方向的数量,如质量、长度或速度等。

list 指列表,即数据项的一个有序集合。

matrices(单数形式matrix)指矩阵,即由横排成行、纵排成列 的元素组成的一种矩形阵列。

tables 指表格,即数据构成一个矩形的竖行和横行进行排列的一张表格

complex 指复形,即由相互关联交织的部分组成的整体

number 指数字,即一种可以表示单位数量的数学实体

tensor 与 vector 有什么区别

张量积(tensor product) ,可以应用于不同的上下文中如向量、矩阵、张量、向量空间、代数、拓扑向量空间和模。在各种情况下这个符号的意义是同样的: 最一般的双线性运算。在某些上下文中也叫做外积。tensor是矩阵分析里面的张量,表示高维数组,或者叫多路数据。二阶张量就是矩阵,一阶张量就是向量。高阶SVD相对于矩阵SVD更能提取出高维数据的内在结构。

Vector 类在 java 中可以实现自动增长的对象数组; vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。

(1) 矢量:具有方向性的量。

(2) 编程语言方面:vector是C++标准模板库中的部分内容,中文偶尔译作“容器”,但并不准确。它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。

scalar在matlab中如何理解

scalar 数

vector 向量

matrix 矩阵

list和vector有什么区别

ArrayList和Vector的区别

这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,并且其中的数据是允许重复的

接着才说ArrayList与Vector的区别,这主要包括两个方面:.

(1)同步性:

Vector是线程安全的,也就是说是它的方法之间是线程同步的,而ArrayList是线程序不安全的,它的方法之间是线程不同步的。

如果只有一个线程会访问到集合,那最好是使用ArrayList,因为它不考虑线程安全,效率会高些;

如果有多个线程会访问到集合,那最好是使用Vector,因为不需要我们自己再去考虑和编写线程安全的代码。

(2)数据增长:

ArrayList与Vector都有一个初始的容量大小,当存储进它们里面的元素的个数超过了容量时,就需要增加ArrayList与Vector的存储空间,每次要增加存储空间时,不是只增加一个存储单元,而是增加多个存储单元,每次增加的存储单元的个数在内存空间利用与程序效率之间要取得一定的平衡。

Vector默认增长为原来两倍,而ArrayList的增长策略在文档中没有明确规定(从源代码看到的是增长为原来的1.5倍)。

ArrayList与Vector都可以设置初始的空间大小,Vector还可以设置增长的空间大小,而ArrayList没有提供设置增长空间的方法。

总结:即Vector增长原来的一倍,ArrayList增加原来的0.5倍。

简单列个表格

fbd38daccb52151de235df97faa82e6a.png

数组和vector的区别

数组时,a[]没有初始化;而你的vectora(40,1),则全部初始化为1.

偷懒的话,可以用c++的方法初始化如下:int a[40];

std::fill(a, a+40, 1);

或者干脆老实地:int a[40];

for (int i = 0; i 

这样array和vector的结果就会相同~

扩展

vector 函数是怎么用的? 直接用个for(int i=3;i<40;++i)

a[i]=a[i-1]+a[i-3];就可以给他所有的值赋值吗?

补充

vector属于容器,标准的做法是用iterator,但你可要它当array用。for (vector::iterator it = a.begin(); it != a.end(); ++it) {...}

a[i]=a[i-1]+a[i-3]; 其实a[0]~a[2]这3个都没有赋值初始化。 前面的所有vector或array赋值,其实只要对前面3个赋值即可。 但初始化是一个好的习惯。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值