IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> MATLAB复习笔记——第二章,MATLAB数据及其运算 -> 正文阅读

[数据结构与算法]MATLAB复习笔记——第二章,MATLAB数据及其运算

一、数据类型

  1. 矩阵是MATLAB最基本的数据对象形式。
  2. 单精度型实数占4个字节,双精度型实数占8个字节,在MATLAB中,数据类型默认为双精度。
  3. single函数可以将其他类型的数据转换为单精度,double函数可以将任意类型的数据转换为双精度。
  4. 在MATLAB中,虚数单位用i或j表示,6+5i和6+5j表示的是同一份复数。
  5. 用class函数可以获取某个数据的数据类型。
  6. 数据输出时,可以用format命令设置数据输出格式。
    格式为 format 格式符
    format命令只影响数据的输出格式,不影响数据的计算和存储。
    short 输出小数点后四位,最多不超过七位有效数字,对于大于1000的实数,用5位有效数字的科学计数形式输出
    long 15位有效数字形输出
    short e 5位有效数字的科学记数形式输出
    long e 15位有效数字的科学记数形式输出
    short g 从short和short e中自动选择最佳输出方式
    long g 从long和long e中自动选择最佳输出方式
    rat 近似有理数表示
    hex 十六进制表示
    正数 负数 零 分别用+、-、空格表示
    bank 银行格式,用元角分表示
    compact 输出变量之间没有空行
    loose 输出变量之间有空行
  7. 如果format命令后面不加格式符,则回到默认输出格式,默认的输出格式是short格式。
  8. hex格式输出单精度或双精度浮点数:
    单精度浮点数(内存中占32个二进制位,第一位为符号位(0表示正数,1表示负数),8位为指数部分(2的多少次幂,存储时加上127),23位为尾数部分.
    单精度浮点数先转换为二进制的科学计数法形式,再按上述法则,得到一个32位的二进制数,最后将二进制数转换为16进制的数。(双精度浮点数的转换同样如此,位数不同罢了)

二、建立矩阵
9. 最简单的矩阵建立方法,将矩阵的元素用中括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用逗号或者空格隔开,不同行的元素用分号隔开。
10. 可用已经建立好的矩阵建立更大的矩阵。
11. 还可以利用实部和虚部构建复数矩阵

  1. 冒号表达式,可利用冒号表达式产生行向量 格式 e1:e2:e3(输出包含初始值和终止值)
    其中e1表示初始值 e2表示步长 e3表示终止值
    若e2不写则表示步长为1
  2. Linspace函数产生行向量 格式 linspace(a,b,n)
  3. 其中a和b是生成向量的第一个和最后一个元素,n是总数,该函数与冒号表达式可以相互转换。即a:(a-b)/(n-1):b等价于linspace(a,b,n)

三、矩阵元素的引用
15. 如果给出额行下标或列下标大于原来给出的矩阵的行数和列数,则matlab将自动扩展原来的矩阵,并将扩展后的未赋值的矩阵元素置为零。

  1. 在matlab中,矩阵元素按列存储,即先存储第一列,再存第二列············· · · · · · 再到最后一列。
  2. 矩阵A(i,j)的序号为(j-1)*m+i
  3. sub2ind函数将矩阵中指定元素的行、列下标转换为存储的序号
    格式为 D=sub2ind(S,I,J)
    S表示要转换矩阵的行数和列数,通常用size函数获取,I、J分别表示要转换的矩阵的行下标和列下标
    如:

A=[1:3;4:6];
D=sub2ind(size(A),[1,2;2,2],[1,1;3,2])
D=
1 2
6 4

  1. Ind2sub函数用于吧矩阵元素的行数和列数转换成对应的下标
    格式 (I,J)=ind2sub(S,D)

  2. 求矩阵大小有关的的函数
    size 求矩阵的大小,几行几列
    length 求矩阵的最长维的长度
    numel 求矩阵的个数
    ndims 给出矩阵的维数

  3. 利用冒号表达式获得子矩阵
    A(i,:)表示A矩阵的第i行的全部元素
    A(I:i+m,k:k+m)表示第i行到i+i+m行,第k列到k+m列的所有元素
    A(:,j) 表示A矩阵的第i列的全部元素
    A( : ) 表示A矩阵的每一列元素堆叠起来,形成一个包含A矩阵全部元素的列向量
    此外,还可以用一般向量和end运算符来表示矩阵下标,从而获得子矩阵,end表示某一维的末尾元素的下标。

  4. 空矩阵,指矩阵中没有任何元素的矩阵,如X=[ ]

  5. 将某些元素删除时可采用将其置为空矩阵的方法。
    %空赋值只能有一个非冒号索引!

  6. reshape(A,m,n)函数再矩阵总元素保持不变的前提下,将矩阵A重新排列成m*n的二维矩阵。reshape函数只改变原矩阵的行数和列数,不改变原矩阵的个数和存储顺序。
    四、变量及其操作。

  7. 变量名是以字母开头,后接数字,字母或者下划线的字符序列,最多63个字符。

  8. matlab赋值语句有两种形式①变量=表达式;②表达式

  9. 如果在语句末尾加分号,则仅仅执行赋值操作,而不会显示运算的结果。

  10. 常用的预定义变量
    Ans 计算结果的默认赋值变量
    Eps 机器零阈值
    Pi 圆周率Π的近似值
    I,j 虚数单位
    Inf,inf 无穷大,如1/0的结果
    NaN,nan 非数,如0/0,inf/inf的结果
    Nargin 函数输入参数个数… …

  11. 注:尽量不要使用i,j为变量名例:

i=4;
x=6+5i;
x
%输出x=6.0000+5.0000i
y=6+5*i;
y
%输出y=26

  1. clear 命令用于删除matlab工作空间中的变量。Who和whos这两个命令用于显示在matlab工作空间中已经驻留的变量名清单。31. 常用的数学函数变量名P31
  2. 矩阵的超越函数:直接作用与矩阵的超越函数(对整个矩阵的运算),这些函数名都在上述内部函数名之后缀以m,并规定输入参数A必须是方阵。
  3. 矩阵除法,A\B等效于A的逆左乘B矩阵,B/A等效于B左乘A的逆,求矩阵的逆的函数为inv()。对于矩阵的运算,一般来说,A\B!=B/A。
  4. 点运算:点运算符有.*、./、.\、.^,两矩阵进行点运算是指对他们的对应元素进行相关运算。要求两矩阵同型才能进行。注: a=2./A a=2/A %报错,一个数除以一个矩阵必须用点运算。
  5. 关系运算符:gt <=le >=ge ==eq ~=(不等于)ne (后面的字母表示对应运算的函数。)
    运算法则
    ① 当两个比较量是标量的时候,直接比较大小,若关系式成立,关系式表达结果为1,否则为0.
    ② 当参与比较的是两个同型的矩阵时,比较的是两个矩阵同位置上的元素,最终关系运算的结果是一个与原矩阵同型的矩阵,他的元素由0 ,1组成。
    ③ 当一个是标量,一个是矩阵时,将这个标量逐一与矩阵的每一个元素进行关系运算,最终关系运算的结果是一个与原矩阵同型的矩阵,他的元素由0 ,1组成。
  6. 关系运算函数P38 其中一个find函数,找出向量或矩阵中非零元素的位置。
  7. 逻辑运算P38,或、与、非
    运算等级:算术运算>关系运算>逻辑运算
  8. 字符串是用单引号括起来的字符序列,若字符串中的字符含有单引号,则该单引号要用两个单引号表示。
  9. abs和double函数都可以用来获取字符串所对应的ASCII码数值矩阵值。Char函数可以把ASCII码阵转换成字符串矩阵。
  10. 字符串的连接、查找、替换P41.
  11. 结构矩阵的建立
    结构矩阵元素.成员名=表达式
    如,a(1).x1=10
    引用结构矩阵元素的成员名时,显示其值,引用结构矩阵元素时,显示成员名和他的值,但成员是矩阵的时候,不显示具体内容,只显示成员矩阵的大小参数。引用结构矩阵的时候,只显示矩阵的大小和参数。
  12. rmfield函数可以用来删除结构的成员。
    给a添加一个成员,a(1).x4=’1223’,一个元素添加成员时,其他元素也添加了对应的成员,只不过成员是空的。
    删除结构的成员,a=refiled(a,’x4’)
  13. 单元数据:单元数据与结构数据类似,也是把不同属性数据放在一个变量中,不同的是结构矩阵的各个元素下有成员,每个成员有自己的名字,单元矩阵的各个不同的元素就是不同类型的数据类型,用带有大括号下标的形式引用单元矩阵元素。
    建立单元矩阵和一般矩阵类似,只是矩阵元素用大括号括起来。
  14. 引用单元矩阵的元素,大括号和圆括号的的区别具体内容P44
  15. celldisp函数可以用来显示整个单元矩阵的全部内容

b(3)=[ ] %删除b的第三个元素,删除后整个单位矩阵变成了行向量。
b{3}=[ ] %使第三个元素为空,而不是删除的意思。

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 14:11:59  更:2022-01-01 14:13:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 18:24:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码