408数据结构:数组,矩阵,广义表

时间:2024-03-15 07:40:39

①数组
a[行][列]
(1)分为按优先,按优先
408数据结构:数组,矩阵,广义表例题:
408数据结构:数组,矩阵,广义表
②矩阵
(1)对称矩阵:矩阵中的元素满足a[i][j]=a[j][i]的矩阵称之为对称矩阵(矩阵必须是nn的方阵)
例题:假设有一个n
n的对称矩阵,第一个元素为a[0][0],请用一种存储效率高的形式将其存储在一维数组中。
408数据结构:数组,矩阵,广义表
(2)三角矩阵:分为上三角矩阵,下三角矩阵
408数据结构:数组,矩阵,广义表例题:假设有一个n*n的三角矩阵,第一个元素为a[0][0],请用一种存储效率高的形式将其存储在一维数组中
408数据结构:数组,矩阵,广义表
(3)对角矩阵
408数据结构:数组,矩阵,广义表此处过,考的不多,考了就pass掉做别的题目
例题:
408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表(4)稀疏矩阵:0比较多的矩阵
408数据结构:数组,矩阵,广义表稀疏矩阵的三种表示方法:
4.1三元组表示法
408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表
408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表

4.2邻接表表示法(链式存储)
408数据结构:数组,矩阵,广义表

4.3十字链表表示法(链式存储)
408数据结构:数组,矩阵,广义表
③广义表
408数据结构:数组,矩阵,广义表3.1 广义表的长度和深度求法:
长度的求法为最大括号中的逗号数加一
深度的求法为上面每个元素最大括号匹配数加1

例题:
408数据结构:数组,矩阵,广义表此处链接:如何求广义表的长度和深度
3.2 表头(Head)和表尾(Tail):当广义表非空,第一个元素为广义表的表头,其余元素组成的表示广义表的表尾。

B=(d,e)
取表头元素GetHead(B)=d;取表尾广义表GetTail(B)=(e);
D=(B,C)
取表头元素GetHead(D)=B;取表尾广义表GetTail(D)=(C);
(a)
取表头元素GetHead((a))=a;取表尾广义表GetTail(B)=();

3.3 头尾链表存储结构
408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表408数据结构:数组,矩阵,广义表3.4扩展线性表存储结构
A=()
B=(d,e)
C=(b,(c,d))
D=(B,C)
E=(a,E)
1结点:广义表结点
0结点:原子结点
408数据结构:数组,矩阵,广义表