对实现图的邻接矩阵存储,包括建立、输出,输出指定顶点的边信息。 实现图的邻接链表存储,包括建立、输出,输出指定顶点的边信息进行复数抽象数据类型ADT的描述
时间: 2024-03-15 16:43:02 浏览: 74
邻接表来实现图的存储
1. 图的邻接矩阵存储:
- 建立:将图的顶点按照某种顺序编号,然后创建一个 n*n 的二维数组,其中 n 表示顶点的个数。数组中的元素 a[i][j] 表示顶点 i 和 j 之间是否有边,如果有,则存储权值,否则为 0 或者一个特殊值表示无穷大。
- 输出:遍历二维数组,输出所有非零元素的行列坐标以及权值。如果需要输出指定顶点的边信息,只需要遍历该顶点所在行或者列的元素即可。
2. 图的邻接链表存储:
- 建立:对于每个顶点,创建一个链表,存储与该顶点相邻的所有顶点及其权值。可以使用数组来存储这些链表的头指针,也可以使用哈希表。
- 输出:遍历每个链表,输出链表中的所有顶点及其权值。如果需要输出指定顶点的边信息,只需要遍历该顶点对应的链表即可。
3. 复数抽象数据类型ADT的描述:
- 数据对象:复数集合。
- 数据关系:复数之间有加、减、乘、除、共轭等运算。
- 基本操作:
1. createComplex(a,b): 创建一个复数 a+b*i。
2. addComplex(c1,c2): 复数加法,返回 c1+c2。
3. subComplex(c1,c2): 复数减法,返回 c1-c2。
4. mulComplex(c1,c2): 复数乘法,返回 c1*c2。
5. divComplex(c1,c2): 复数除法,返回 c1/c2。
6. conjComplex(c): 复数共轭,返回 c 的共轭复数。
7. absComplex(c): 复数模长,返回 c 的模长。
阅读全文