- 257
- 0
- 约2.48千字
- 约 4页
- 2017-08-26 发布于河南
- 举报
数据结构试卷1
一、简要回答下列问题(每小题4分,共计20分)1.算法的定义及算法的重要特性。2.对于堆栈有如下输入序列a1a2…an,请证明不可能得出如下形式的输出序列…ai…aj…ak…,其中1≤j<k<i≤n。 3.证明:对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。 4.以关键码序列(50,08,51,06,90,17,89,27,65,42)为例,手工执行以下排序算法,写出一趟排序结束时的关键码状态。直接插入排序? 快速排序? 归并排序5.给出下面无向带权图的最小生成树,并说明您是采用何种算法得出的最小生成树。 二、设线性表L=(a1,a2,…,an)采用单链表作存储结构,试编写算法完成在元素值为k的元素前插入一个元素x。(6分)三、编写非递归算法,计算二叉树中叶子结点的数目。(6分)四、编写算法,由依次输入的顶点数目、弧的数目、各顶点的信息和各条弧的信息建立有向图的邻接表。(8分)五、已知(a1,a2,…,ap)是堆,则可以写一个时间复杂度为O(log2n)的算法将(a1,a2,…,ap,ap+1)调整为堆。试编写“从p=1起,逐个插入建堆”的算法,并讨论由此方法建堆的时间复杂度。(10分) 一、解答下列问题(每小题6分,共计30分)1.可以用一个数组S(设大小为m)作为两个栈的共享空间,请说明两栈共享
原创力文档

文档评论(0)