以下为《数据期末考试1》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
期末考试1
一、 单选题 (共5题,10分)
1、以下数据结构在相同数据量情况下,数据元素之间关系又弱,占用存储空间又小的结构为()
(2.0)
A、 集合
B、 线性结构
C、 树形结构
D、 图形结构
2、p为指针指向当前双向循环链表的某个节点,删除p指向的节点的操作为()
(2.0)
A、
p->prior->next=p->next;
p->next->prior=p->prior;
free(p);
B、
p->prior=p->next;
p->next=p->prior;
free(p);
C、
p->prior->next=p->next;
free(p);
D、
p->next->prior=p->prior;
free(p);
3、栈和队列的操作原则分别是
(2.0)
A、 后进后出,先进先出
B、 后进先出,先进后出
C、 后进先出,先进先出
D、 边进边某某,只出不进
4、若进队序列为A,B和C,那么队尾是()
(2.0)
A、 A
B、 B
C、 C
D、 不清楚
5、具有8个节点的二叉树,树层最高是(),最低是(),根节点为第一层。
(2.0)
A、 7,3
B、 8,4
C、 8,3
D、 8,2
二、 判断 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 ,如果能,请说明,如果不能,请举例说明?
(5.0)
五、 计算题 (共5题,50分)
1、利用Kruskal算法求解最小生成树。/
(10.0)
2、已知二叉排序树结构体为
type struct treenode
{
? ?int key; //关键字
? ?struct treenode *lchild,*rchild;//左右孩子指针
} BTNode;
规定二叉排序树左子树节点值都小于根节点,右子树节点值大于等于根节点值,请写出其插入节点值的函数。
BTNode* BSTInsert(BTNode * bt, int key)//key表示待插入节点值
{
}
(10.0)
3、写出双向循环链表的结点结构体,并写出来在当前结点之前插入一个结点的操作函数。
void DuIns_Elem(DuLinkList *p,DataType x)
//DuLinkList表示双向循环链表的结点结构体,x表示待插入结点的值
{
}
(10.0)
4、待排序记录一共有7个,其关键字初始序列为{12,2,16,30,28,10,20,6,18},写出其直接插入排序前5趟结果。
(10.0)
5、如何使用队列来实现栈的入栈和出栈功能,请写出你的大概思路和主要代码。
(10.0)
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]
以上为《数据期末考试1》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。