第五章 数组和广义表

1、

第五章 数组和广义表_第1张图片

解:

第五章 数组和广义表_第2张图片

2、

第五章 数组和广义表_第3张图片

解:

第五章 数组和广义表_第4张图片

3、

数组通常具有的的两种操作:查找、修改

4、三元组的结构及意义

第五章 数组和广义表_第5张图片

A[0][0]:矩阵中共有几个非零元素

A[i][0]:非零元素的列表

A[0][1]:矩阵的行数

A[0][2]:矩阵的列数

A[i][1]:对应非零元素的行下标

A[i][2]:对应非零元素的列下标

5、对称、三角、三对角矩阵的保存

         相同元素只保存一份,从[0][0]开始

对称:         

           n阶矩阵需要:n(n+1)/2-1个空间

三角:

           n阶矩阵需要:n(n+1)/2个空间

三对角:

           n阶矩阵需要:3n个空间

6、c语言,数组A[0..4,-1..-3,5..7]有元素的个数为多少

        解:

            第五章 数组和广义表_第6张图片

7、广义表

①广义表的表尾只能是“子表”

广义表最基本的操作:取表头head(LS)与取表尾tail(LS)

例:LS=(a,(b,c,d))
head(LS)=a
tail(LS)=((b,c,d))

当head后面第一次跟东西时,直接算第一个,当head后面第二次跟东西时,是原来的东西,当head后面套三成套时,才是最前面的第一个元素    而且tail在最外层一定是带()的,这也体现了“表尾只能是子表”这一现象,而head可能是带()的,加不加括号取决于外面()有几层
head(tail(LS))=(b,c,d) 

head(head(tail(LS)))=b

tail(head(tail(LS)))=(c,d)
tail(tail(LS))=()

head(tail(head(tail(LS))))=c
tail(tail(head(tail(LS))))=(d)
head(tail(tail(head(tail(LS)))))=d
tail(tail(tail(head(tail(LS)))))=()

你可能感兴趣的:(数据结构,计算机考研)