- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
习题1
一、选择题
1. B 2. D 3. D 4. A 5. C 6. A 7. B 8. D 9. C 10. A
二、简答题
1. 答:数据的逻辑结构通常有四种,即集合、线性结构、树形结构和图状结构。存储结构主要有顺序存储结构和链式存储结构。
2. 答:比如一分通讯录,记录了相关人员的电话号码,将其按姓名一人占一行构成表,这个表就是一个数据结构。每一行是一个记录,对于整个表来说,只有一个开始结点和一个终端结点,其它结点也只有一个前驱和一个后继。这几个关系就确定了表的逻辑结构。
3. 答:算法是对特定问题求解步骤的一种描述,是指令的有限序列,其中每一条指令表示一个或多个操作。算法具有有穷性、确定性、可行性、输入和输出5个特性。
4. 答:它是一种树型结构,可以用二元组描述为:
A={K, R}
K={a, b, c, d, e, f, g, h, i}
R={(a,b),(a,c),(c,d),(c,e),(d,f),(d,g),(e,h),(f,i)}
5.答:
(1) A对应的逻辑图形如下图左,它是一种线性结构。
(2) B对应的逻辑图形如上图右所示,它是一种树型结构。
(3) C对应的逻辑图形如下图所示,它是一种图型结构。
三、计算题
解: (1) O(n) ; (2) O(n) ; (3) O(n1/2) ;(4)略。
习题2
一、选择题
1. A 2. B 3. B 4. D 5. A 6. C 7. B 8. A 9. C 10. C
二、简答题
1. 答:线性表是具有n个数据元素的一个有限序列。线性表的特点是:数据元素之间是一对一的关系。除第一个元素外,每个元素有且只有一个直接前驱;除最后一个元素外,每个元素有且只有一个直接后继。
2. 答:头指针是链表的一个标识,它用来指向带头结点的链表中的头结点。头结点是在链表的第一个数据元素之前附加的一个结点,它的作用是使对第一个结点的操作和其它结点一致,表空与非空时处理一致,不需要特殊处理,简化了操作。
3. 答:顺序表的特点是逻辑位置相邻的数据元素其物理位置也相邻,因此可以进行随机存储, 是一种随机存储结构。其插入和删除操作的时间复杂度均为O(n)。链表中的数据元素使用一组任意的存储单元存储,不要求逻辑位置相邻的数据元素物理位置也相邻,而是采用附加的指针表示元素之间的逻辑关系。链表的插入和删除结点均不需要移动其他结点,但是,其查找运算必须从头指针开始顺序查找,其时间复杂度为O(n)。
答:算法如下
void Convert(SqList L){
int i,j,temp;
j=L.length-1;
i=0;
while(ij){
temp=L.elem[i];
L.elem[i]=L.elem[j];
L.elem[j]=temp;
i++;
j--;
}
}
答:算法如下
void Delete(SqList La,SqList Lb){
int i,j,k;
i=0;j=0;
while(iLa.lengthjLb.length){
if(La.elem[i]Lb.elem[j]) i++;
else if(La.elem[i]Lb.elem[j]) j++;
else ListDelete_Sq(La, i+1, k);
}
}
答:算法如下
void InvertList(LinkList L){
LinkList p,q,r;
p = L-next;
q = p-next;
p-next=NULL;
while(q!=NULL){
r=q-next;
q-next=p;
p=q;
q=r;
}
L-next=p;
}
7. 答:算法如下
void MergeOrder(LinkList La,LinkList Lb){
LinkList pa,pb,Lc,pc;
pa=La-next;
pb=Lb-next;
Lc=pc=La;
while (papb){
if(pa-data =pb-data ){
pc-next=pa;
pc=pa;
pa=pa-next;
}else{
pc-next=pb;
pc=pb;
pb=pb-next;
}
}
if (!pa) pc-next=pb;
else pc-next=pa;
}
8.答略。
9. 答:算法如下
int Length(LinkList L){
int i=0;
LinkList p;
p=L-next;
while(p){
p=p-next;
i++;
}
return
您可能关注的文档
最近下载
- 2025中国低空经济行业研究报告.pdf
- 社会调查研究方法:社会现象的测量PPT教学课件.pptx
- 高中语文课件:《红楼梦》选讲16.pptx
- 《白内障病人护理》课件.pptx VIP
- 2022-2023学年河北省保定市定州市七年级下学期期中数学试卷(含答案解析).docx
- 交通安全知识与安全驾驶行为培训课件.pptx
- 测绘法规与管理:测绘标志的作用及重要性教学课件.pptx VIP
- 2024年德育国测复习试题有答案.doc
- 呼吸系统疾病的急症处理与抢救.pptx VIP
- 第一课社会主义从空想到科学、从理论到实践的发展课件(共51张PPT)2024届高考政治一轮复习统编版必修一中国特色社会主义.pptx VIP
文档评论(0)