910数据结构(2018年真题)

算法设计题

问题1

设计一个算法,判定带头结点的单链表L是否是递增的。要求:
(1)描述算法的基本设计思想
(2)根据设计思想,写出C语言描述算法,关键之处请废除简要注释。

int IsAscending(LinkList L){
	
}

问题2

若二叉树采用二叉链表存储结构,试设计一个算法,求先序遍历序列中第k(1 (1)描述算法的基本设计思想
(2)根据设计思想,给出C语言描述算法,关键之处请给出简要注释。

在这里插入代码片

选择题错题整理

1.在数据结构中,与所使用的计算机无关的是数据的()结构。
A.逻辑
B.存储
C.逻辑和存储
D.物理
正确答案
A.逻辑
试题分析

2.循环队列是()。
A.不会产生下溢出
B.不会产生上溢出
C.不会产生假溢出
D.以上都不对
正确答案
C.不会产生假溢出
试题分析

简答题

1.试举一例子,说明对相同的逻辑结构,同一种运算在不同的存储方式下实现,其运算算法的效率是不同的。

2.简述递归设计的关键点。

3.简述矩阵的压缩存储。试举一个例子说明。

4.画出二叉树的五种基本形态。

5.简述构造哈希表时,处理冲突的几种方法。

6.简要说明希尔排序的基本思想。试举一个例子说明。

综合应用题注意事项

1.第二趟快速排序时要对枢轴两边的元素分别进行一次快排

2.关键字基本有序时,选堆排序而不选快速排序的理由
因为关键字基本有序时,快速排序的时间复杂度为O(n^2),而堆排序的时间复杂度为O(nlog2n),同时堆排序的空间复杂度只有O(1)

你可能感兴趣的:(青大数据结构真题,数据结构,算法)