- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一、应用题
1、列出常见的时间效率的数量级表示,并按照时间效率由
高到低的顺序进行排序。
2、说明顺序表和链表的优缺点和适用场合。
顺序表的缺点:
必须确定表的最大长度
可能溢出
删除带来元素的移动
顺序表的优点:
程序设计简单;
随机存取,读写效率为O(1)
适用场合:
元素较小
表长能事先确定
很少在非尾部位置和删除
经常需要根据位序进行读写
链表的优点:
动态的结构,不需事先申请空间
不需要担心溢出
删除只引起指针的变化,效率更高
链表的缺点:
不能做到随机存取,读写效率为O(n)
程序设计复杂性大
链域也占空间,使密度降低
适用场合:
元素较大
不能事先确定表长
经常需要做、删除和元素的重排
。。。。。
3、为了求两个集合A,B的交集C,甲同学用无序表来表示
集合,乙同学用有序表来表示集合。请分别为甲乙两位同学
设计求交集的算法(只需文字描述),并比较不同方案下的
算法的时间效率,你会选择哪种方案?
4、顺序表类,单链表类的定义及其中各方法的实现
(清除不结点的单链表的所有结点,,删除,扩充
算法…..)
5、说明线性表、栈与队的异同点。
相同点:
都是线性结构,都是逻辑结构的概念。
都可以用顺序或链表;
栈和队列是两种特殊的线性表,即受限的线性表,只是对插
入、删除运算加以限制。
不同点:
①基本操作不同
线性表可以在任何合法位置进行和删除;
栈是只允许在一端进行、删除运算,因而是后进先出表
LIFO;
队列是只允许在一端进行、另一端进行删除运算,因而
是先进先出表FIFO。
②用途不同
线性表用于处理更一般的数据处理场合;
栈用于函数之间的相用、递归、表达式的求值等;
队列用于多道作业处理、资源分配等。
6、顺序栈类,链栈类,循环队列类,链式队列类的定义及
其中各方法的实现,其他算法
7、中缀形式转换为前缀和后缀表达式(计算)
8、顺序表、链表,顺序栈,链栈,循环队列,链队列的示
意图,循环队列长度的计算方法?什么是顺序队列的假溢出
现象?如何解决?循环队列如何区分队空和队满?
9、队列和双端队列有何异同?
二、算法设计题
1.假设用不结点的的单链表作为线性表List的结
构,为List类添加一个成员函数定位中间位置的结点。
如果表为(1,2,3,4,5),则中间位置元素为3,如果表为
(1,2,3,4),则中间位置元素为2;
temteclassT
LinkNode*ListT::middle_point(){
LinkNodeT*p=first;
LinkNodeT*q=first;
while(q-next!=NULL){
q=q-next;
if
(q-next!=NULL){q
=q-next;
p=p-next;
}
}
returnp;
}
2、假设用不结点的的单链表作为线性表List的结构,
为List类添加一个递归成员函数,统计表中值为item的结点
..
的个数。
例如:线性表为:(7,2,1,7,2,3,6,5)
统计链表中值为7的结点数,返回结果应为2。
temteclassT
intListT::count_item(T
item){returnrec_count(first,item);
}
temteclassT
intListT::rec_count(LinkNode*head,T
item){if(head==NULL)
return0;
if(head-data==item)
return1+rec_count(head-next,item);
else
returnrec_count(head-next,item);
}
temteclassT
intListT::rec_count(LinkNodeT*head,Titem)
{
if(head==NULL)
return0;
else
if(head-d
您可能关注的文档
最近下载
- CECS302-2011 乡村建筑外墙板应用技术规程.docx VIP
- CECS438-2016 住宅卫生间建筑装修一体化技术规程.docx VIP
- CECS455-2016 应急电源系统施工及验收规程.docx VIP
- 注塑模具运行确认记录表(1).docx VIP
- DLT 598-2010 电力系统自动交换电话网技术规范.docx VIP
- 民宿酒店运营管理实务操作手册.docx VIP
- KRONES润滑资料概要1.ppt VIP
- 新教科版二年级上册科学期末测试卷通用.docx VIP
- 容器-Kubernetes认证管理员CKA培训教材.pdf
- 医疗纠纷预防和处理条例(完整版).pptx VIP
原创力文档


文档评论(0)