Matlab数组创建、数组寻址、数组排序、数组检测、数组结构

一、数组创建

1、一维数组的创建 P43

  • 直接输入
 a=[1,2;3,4]
  • 用:输入
a=2:3:12      %生成步长为3的向量 
  • x=linspace(x1,x2,n) %在x1和x2之间生成n个线性分布的等差数列数组x
  • x=logspace(a,b,n) %创建第一个数是10^a, 最后一个数是10^b,的n个等比数列数组x

2、二维数组的创建 P45

  • ones(m,n) % 产生m*n的全1矩阵
  • eye(m) %产生m*m的单位矩阵
  • diag(a) %取矩阵a的对角元
  • rand(m,n) %生成m*n的均匀分布的伪随机数
  • randn(m,n) %生成m*n的标准正态分布的伪随机数
  • randsrc(m,n) %生成m*n的矩阵,元素为随机出现的-1或1

二、数组寻址

1、一维数组寻址 P46

  • 访问其中一个元素

     a(5)              %对矩阵a的第5个元素进行访问
    
  • 访问多个元素

     a([1,3,5])        %对矩阵a第1、3、5个元素进行访问
    

2、二维数组寻址 P49

  • sub2ind(size(a),[2,3],[2,1])

%读取矩阵a中第2行、第2列,第2行、第1 列的两个元素 ( sub2ind()函数:将下标转为索引;sub—subscripts下标,ind—index索引)

>> a=[1,2,3;4,5,6;7,8,9]    

a =

     1     2     3
     4     5     6
     7     8     9
 
>> b=sub2ind(size(a),[2,3],[2,1])      %读取矩阵a中第2行、第2列,第2行、第1 列的两个元素  
 
b =

     5     3                           %结果5——matlab按列搜索,第2行、第2列元素是第5个数;结果3——第3行、第1列元素是第3个数

>> a(b)

ans =

     5     7                           %第5个数是5,第3个数是7

三、数组排序

1、一维数组排序 P50

  • [b,index]=sort(a)

    %a是一个待排序的数组,b是排序后的数组,index是排序后的数组的各个元素在原数组中的位置

2、一维数组排序 P50

  • [b,index]=sort(a,dim,mode)

    %dim表示对行还是列进行排序,dim=1——列(一般省略:变为[b,index]=sort(a,mode) ;dim=2——行(不可省)

    %mode表示进行升序还是降序排序,mode=‘descend’——降序; mode=‘ascend’——升序

四、数组检测 P51

  • isempty() %检测是否为空数组
  • isscalr() %检测是否为单元素的标量数组
  • isvecor() %检测是否为具有一行元素或一列元素的一维数组
  • issparse() %检测是否为稀疏数组

五、数组结构 P53

  • length()

    %求数组的长度:一维数组返回值是元素的个数;二维数组返回值是行数和列数的最大值

  • numel()
    %求数组元素的总数:一维数组元素总数就是数组的长度;二维数组就是行数乘以 列数

  • size()
    %求数组的行数和列数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值