全国高等教育自学考试数据结构

发布 2019-06-08 11:30:37 阅读 4404

7.广义表a=(a,b,(a,b,(a,b,……的长度为( )

a.1 b.2

c.3 d.无限值。

8.已知10×12的二维数组a,按“行优先顺序”存储,每个元素占1个存储单元,已知a[1][1]的存储地址为420,则a[5][5]的存储地址为( )

a.470 b.471

c.472 d.473

9.在一棵二叉树中,度为2的结点数为15,度为1的结点数为3,则叶子结点数为( )

a.12 b.16

c.18 d.20

10.在带权图的最短路径问题中,路径长度是指( )

a.路径上的顶点数 b.路径上的边数。

c.路径上的顶点数与边数之和 d.路径上各边的权值之和。

11.具有n个顶点、e条边的无向图的邻接矩阵中,零元素的个数为( )

b.2e 12.要以o(n log n)时间复杂度进行稳定的排序,可用的排序方法是( )

a.归并排序 b.快速排序。

c.堆排序 d.冒泡排序。

13.若希望在1000个无序元素中尽快求得前10个最大元素,应借用( )

a.堆排序 b.快速排序。

c.冒泡排序 d.归并排序。

14.对有序表进行二分查找成功时,元素比较的次数( )

a.仅与表中元素的值有关 b.仅与表的长度和被查元素的位置有关。

c.仅与被查元素的值有关 d.仅与表中元素按升序或降序排列有关。

15.散列文件是一种( )

a.顺序存取的文件 b.随机存取的文件。

c.索引存取的文件 d.索引顺序存取的文件。

二、填空题(本大题共10小题,每小题2分,共20分)

请在每小题的空格中填上正确答案。错填、不填均无分。

16.若一个算法中的语句频度之和为t(n)=3n3-200nlog2n+50n,则该算法的渐近时间复杂度为。

17.在单链表中,除了第1个元素结点外,任一结点的存储位置均由指示。

18.栈的修改是按的原则进行。

19.字符串中任意个连续的字符组成的子序列称为该串的。

20.假设一个10阶的上三角矩阵a按行优先顺序压缩存储在一维数组b中,若矩阵中的第一个元素a11在b中的存储位置k=0,则元素a55在b中的存储位置k

21.在一棵具有n个结点的严格二叉树中,度为1的结点个数为。

22.对于稀疏图,采用表示法较为节省存储空间。

23.在排序过程中,如果则称其为外部排序。

24.设有一组记录的关键字为{19,14,23,1,68,12,10,78,25},用链地址法构造散列表,散列函数为h(key)=key%11,散列地址为1的链中有个记录。

25.多关键字文件的特点是除主文件和主索引外,还建有。

三、解答题(本大题共4小题,每小题5分,共20分)

26.对于下列稀疏矩阵(注:矩阵元素的行列下标均从1开始)

1)画出三元组表;

2)画出三元组表的行表。

27.已知一个森林的前序遍历序列为cbadhegf,后序遍历序列为abcdefgh。

1)画出该森林;

2)画出该森林所对应的二叉树。

28.对关键字序列(429,653,275,897,170,908,473,256,726)进行基数排序,写出每一趟的排序结果。

29.对下列关键字序列。

构造散列表,假设散列函数为h(key)=key%13,用拉链法解决冲突。

1)画出该散列表;

2)求等概率情况下查找成功的平均查找长度asl;

3)写出删除值为70的关键字时所需进行的关键字比较次数。

四、算法阅读题(本大题共4小题,每小题5分,共20分)

30.阅读下列算法,并回答问题:

1)假设l=(3,7,7,11,20,20,20,51,51),写出执行函数f30(&l)后的l;

2)简述f30的功能。

void f30(seqlist*l)

五、算法设计题(本题10分)

34.设顺序表l是一个递增有序表。编写算法,要求利用二分查找法确定插入位置,将元素x插入到l中,使l保持有序。