1,第五章数组和广义表,主讲人:卫文学,2,学习目标,本章主要介绍稀疏矩阵的概念和存储结构以及相应运算的算法,广义表的概念和存储结构以及相应运算的算法。通过本章学习,要求同学们:,掌握稀疏矩阵的定义,三元组线性表表示,顺序存储结构和每一种链接存储结构;,掌握对稀疏矩阵进行的每一种运算的方法和时间复杂度,了解相应的算法描述;,掌握广义表的定义,它的链接存储结构,以及求广义表长度、深度的方法和递归方法。,3,5.1数组的类型定义,4,二维数组的定义:,数据对象:D=aij|0ib1-1,0jb2-1数据关系:R=ROW,COLROW=|0ib1-2,0jb2-1COL=|0ib1-1,0jb2-2,5,基本操作:,InitArray(,计算中进行了很多和零值的运算,遇除法,还需判别除数是否为零。,15,1)尽可能少存或不存零值元素;,解决问题的原则:,2)尽可能减少没有实际意义的运算;,3)操作方便。即:能尽可能快地找到与下标值(i,j)对应的元素,能尽可能快地找到同一行或同一列的非零值元。,16,1)特殊矩阵非零元在矩阵中的分布有一定规则