(2003-2004学年第2学期)
一、 单项选择题
1对于一个算法 当输入非法数据时也要能作出相应的处理这种要求称为 。
(A)、正确性 (B).可行性 (C).健壮性 (D). 输入性
2设S为C语言的语句,计算机执行下面算法时算法的时间复杂度为 。for(i=n-1 i>=0 i--)for(j=0 j<i j++) S
(A)、 n2 (B).O(nlgn) (C).O(n) (D). O(n2)
3折半查找法适用于 。
A、有序顺序表 B、有序单链表
C、有序顺序表和有序单链表都可以 D、无限制
4顺序存储结构的优势是 。
A、利于插入操作 B、利于删除操作
C、利于顺序访问 D、利于随机访问
5深度为k的完全二叉树其叶子结点必在第 层上。
A、 k-1 B、 k C、 k-1和k D、 1至k
6具有60个结点的二叉树其叶子结点有12个则度过1的结点数为
A、 11 B、 13 C、 48 D、 37
7 图的Depth-First Search(DFS)遍历思想实际上是二叉树 遍历方法的推广。
A、先序 B、 中序 C、后序 D、层序
8在下列链队列Q中元素a出队的操作序列为
A、 p=Q.front->ne xt;p->ne xt=Q.front->ne xt;
B、 p=Q.front->ne xt;Q.front->ne xt=p->ne xt;
C、 p=Q.re ar->next;p->next=Q.re ar->next;
D、 p=Q->n e xt;Q->ne xt=p->ne xt;
9 Huffman树的带权路径长度WPL等于
A、除根结点之外的所有结点权值之和 B、所有结点权值之和C、各叶子结点的带权路径长度之和 D、根结点的值
10线索二叉链表是利用 域存储后继结点的地址。
A、 lchild B、 data C、 rchild D、 root
二、填空题
1 逻辑结构决定了算法的 而存储结构决定了算法的 。
2 栈和队列都是一种 的线性表栈的插入和删除只能在 进行。
3 线性表a1,a2,…,an的顺序存储结构中设每个单元的长度为L元素ai
4 已知一双向链表如下(指针域名为next和prior)
现将 p 所指的结点插入到 x和 y 结点之间 其操作步骤为
5 n个结点无向完全图的的边数为 n个结点的生成树的边数为 。
6 已知一有向无环图如下
A
任意写出二种拓扑排序序列 、 。
7已知二叉树的中序遍历序列为BCA后序遍历序列为CBA则该二叉树的先序遍历序列为 层序遍历序列为 。
三、应用题
1 设散列函数H(k)=k% 13,设关键字系列为{22, 12,24,6,45,7,8, 13,21} ,要求用线性探测法处理冲突。 (6分)
(1)构造HASH表。
(2)分别求查找成功和不成功时的平均查找长度。
2 给定表19, 14,22, 15,20,21,56, 10 . 8分
1 按元素在表中的次序建立一棵二叉排序树
2 对(1)中所建立的二叉排序树进行中序遍历写出遍历序列。
3 画出对(2)中的遍历序列进行折半查找过程的判定树。
3 已知二个稀疏矩阵A和B的压缩存储三元组表如下
A B
写出A-B压缩存储的三元组表。 5分
4 已知一维数组中的数据为18, 12,25,53, 18 ,试写出插入排序升序过程。并指出具有n个元素的插入排序的时间复杂度是多少 (5分)
5 已知一网络的邻接矩阵如下求从顶点A开始的最小生成树。 (8分要有过程)
A B C D E F
1求从顶点A开始的最小生成树。
2分别画出以A为起点的DFS生成树和BFS生成树。
6 已知数据六个字母及在通信中出现频率如下表
把这些字母和频率作为叶子结点及权值完成如下工作(7分要有过程) 。
1 画出对应的Huffman树。
2 计算带权路径长度WPL。
3 求A、 B、 C、 D、 E、 F的Huffman编码。
7 已知有如下的有向网
求顶点A到其它各顶点的最短路径采2用Dijkstra算法要有过程。 6分
三、 设计题30分每题10分,用C语言写出算法做在答题纸
上
1 已知线性表a1,a2,…,an以顺序存储结构为存储结构其类型定义如下
#define LIST_INIT_SIZE 100 //顺序表初始分配容量
设计一个算法删除其元素值为x的结点假若x是唯一的。并求出其算法的平均时间复杂度。其算法函数头部如下
Status ListDelete(Sqlist&L,Elemtype x)
{
……
}
设计算法将栈顶元素出栈并存入e中 base
3设二叉链树的类型定义如下typedef int Elemtype;typedef struct node{
Elemtype data;struct node *lchild,*rchild;
}BinNode, *BinTre e;
试写出求该二叉树叶子结点数的算法:
Status CountLeaves(BinTree&root,int&n)
{//n is the number of leaves
……
}
答案
选择题每题1分
1、 C2、 D3、A4、 D5、 C6、 D7、A8、 B9、 C10、 C
一、填空题
1设计、实现
2特殊、栈顶
3 LO Ca 1 +(i-1)*L
4 p->next=q->next;q->next->prior=p; q->next=p;p->pr i or=q;
5 n(n-1)/2、 n-1
6 AD CBFEG、 ABCD EFFG
7 AB C、 AB C
二、应用题
1 1Hash表4分
2查找成功的平均查找长度 1分
5*1+1*2+2*3+1*7 /9=20/9
查找不成功的平均查找长度 1分
2+1+9+8+7+6+5+4+3+2+1 /13=
2 1、构造3分
(2)、 10 1415 1920212256 2分
3、 3分
3、 (5分每行0.5)
4、 初始关键字 [18] 12 25 53 18
第 一 趟 [12 18] 25 53 18
第 二 趟 [12 18 25] 53 18
第 三 趟 [12 18 25 53] 18
第 四 趟 [12 18 18 25 53] 4分
On2 1分。
5、 7分
1 4分
2 4分
6、 (1)3分
A B C D
2WP L=0.1*3+0.1*3+0.2*2+0.15*3+0.15*3+03*21= (1分)3A 010 B 011 C 110 D 111 E 00 F 10 3分
12、A-B A、 B 1分
A-C A、 D、 C 2分
A-D A、 D 1分
A-E A、 D、 E 2分
三设计题20分
1、 (10分)
Status ListDelete(Sqlist&L,ElemType x)
{int i,j;for(i=0;i<L->length;i++)if(L->elem[i]==x)break;if(i=L->length) return ERROR;for(j=i;j<L->lengthi-1;j++)
L->elem[j]=L->e lem[j+1];
;
平均时间复杂度 2分
设元素个数记为n则平均时间复杂度为
E
2 10分void pop(Stac k&S,Elemtype&e)
{if(S.top==S.bas e)return ERROR;
S.top--;e=*s.top;
}
2、 10分voidCountLeaves(BinTree T,int&n)
{if(T)
{if((!(T->lchild)&&!(T->rchild))n++;
CountLeaves (T->lc hild,n);
CountLeaves (T->rc hild,n);
}
}
习题1
一、单项选择题
1 .数据结构是指 。
A.数据元素的组织形式 B.数据类型
C.数据存储结构 D.数据定义
2.数据在计算机存储器内表示时物理地址与逻辑地址不相同的称之为 。
A.存储结构 B.逻辑结构
C.链式存储结构 D.顺序存储结构
3.树形结构是数据元素之间存在一种 。
A.一对一关系 B.多对多关系
C.多对一关系 D.一对多关系
4.设语句x++的时间是单位时间则以下语句的时间复杂度为 。for(i=1 ; i<=n; i++)for(j=i ; j<=n; j++)x++;
A.O(1) B.O( ) C.O(n) D.O( )
5.算法分析的目的是1 算法分析的两个主要方面是2 。
1 A.找出数据结构的合理性 B.研究算法中的输入和输出关系
C.分析算法的效率以求改进 D.分析算法的易懂性和文档性
2 A.空间复杂度和时间复杂度 B.正确性和简明性
C.可读性和文档性 D.数据复杂性和程序复杂性
6.计算机算法指的是1 它具备输入输出和2等五个特性。
1 A.计算方法 B.排序方法
C.解决问题的有限运算序列 D.调度方法
2 A.可行性可移植性和可扩充性 B.可行性确定性和有穷性
C.确定性有穷性和稳定性 D.易读性稳定性和安全性
7.数据在计算机内有链式和顺序两种存储方式在存储空间使用的灵活性上链式存储比顺序存储要 。
A.低 B.高 C.相同 D.不好说
官方网站:https://www.shuhost.com/公司名:LucidaCloud Limited尊敬的新老客户:艰难的2021年即将结束,年终辞旧迎新之际,我们准备了持续优惠、及首月优惠,为中小企业及个人客户降低IT业务成本。我们将持续努力提供给客户更好的品质与服务,在新的一年期待与您有美好的合作。# 下列价钱首月八折优惠码: 20211280OFF (每客户限用1次) * 自助购买可复制...
官方网站:点击访问青云互联活动官网优惠码:终身88折扣优惠码:WN789-2021香港测试IP:154.196.254美国测试IP:243.164.1活动方案:用户购买任意全区域云服务器月付以上享受免费更换IP服务;限美国区域云服务器凡是购买均可以提交工单定制天机防火墙高防御保护端口以及保护模式;香港区域购买季度、半年付、年付周期均可免费申请额外1IP;使用优惠码购买后续费周期终身同活动价,价格不...
DMIT.io是成立于2018年的一家国外主机商,提供VPS主机和独立服务器租用,数据中心包括中国香港、美国洛杉矶和日本等,其中日本VPS是新上的节点,基于KVM架构,国际线路,1Gbps带宽,同时提供月付循环8折优惠码,或者年付一次性5折优惠码,优惠后最低每月8.72美元或者首年65.4美元起,支持使用PayPal或者支付宝等付款方式。下面列出部分日本VPS主机配置信息,价格以月付为例。CPU:...