秋数据结构复习提纲.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
秋数据结构复习提纲

数据结构 期末考试 复习提纲 2015年12月 第一部分 题型 1.单选题:2分×15=30分  概述1、线性表2、栈队串2、数组广义表1、树3、图2、排序2、查找2 2.判断题:2分×10=20分  概述1、线性表1、栈队串1、数组广义表1、树2、图2、排序1、查找1 3.填空题:2分×11=22分  概述1、线性表1、栈队串1、数组广义表2、树2、图2、排序1、查找1 4.应用题:8分× 2=16分  树1、排序1 5.程序题:6分× 2=12分  二叉链表1、顺序表1 1、算法满足的五个重要特性是:____、____、____、输入、输出;其中区别于程序的地方是____。 2、算法评价一般考虑的四个方面是:____、可读性、____、____;其中在数据结构里主要考虑____。 3、算法分析的目的是分析算法是否正确吗? 4、算法的时间复杂性是指在计算机上的实际运行时间吗? ? 5、算法的时间复杂性、空间复杂性往往是一对矛盾吗?? 6、计算机的内、外存越大,算法的空间复杂性就越低吗? ? 7、算法的正确性,一般不进行形式化的证明,而是用测试来验证。 ? 8、简单程序段复杂性判断。 第二部分 复习提纲(不分题型) sum=0; for(i=1;i=n;i++) sum+=i; sum=0; for(i=1;i=n;i*=2) sum+=i; O(n) O(log2n) sum=0; for(i=0;in;i++) for(j=0;jn;j++) A[i][j]=0; O(n2) sum=0; for(i=n;i1;i/=2) sum+=i; O(log2n) 改为“i100”? 1、顺序表和链表中的逻辑关系分别用什么表示? 2、顺序表任何位置插入和删除结点都要移动其它结点吗? ? 3、求单链表中当前结点的后继和前趋的时间复杂度分别是____。 4、单链表中增加头结点的目的? 5、单链表中取第i个元素的时间与i成正吗?? 6、带头结点的循环单链表L为空的条件是____。 L- next==L 7、带头结点的单链表L为空的判定条件是____。 L- next==NULL 8、非空单循环链表L中结点*p是尾结点的条件是____。p- next==L 9、每节点1个链域的链表是单链表,每节点2个链域的链表是双链表吗? ? L … ? 10、例:将顺序表中所有负数移动到表的前端,要求移动次数小。 解:双向扫描:从前向后找一个正数,再从后向前找一个负数,然后交换两者位置。复杂性为O(n)。 void moves(sqlist *L) { int i,j; datatype x; i=1;j=L-n; //设数组下标从1开始 while(ij) { while(L-data[i]0 ij) i++; //从前向后找正数 while(L-data[j]=0 ij) j??;//从后向前找负数 if(ij) {//交换 x=L-data[i];L-data[i]=L-data[j];L-data[j]=x; i++;j??; } } } + - - + - - + + - + - - + - 11、例:删除顺序表中所有的正数,要求移动次数小。 解:搜索顺序表,对每一个正数,先不删除,而是累计当前正数个数s,于是,对每个非正数,将它一次性前移s位。算法复杂性为O(n)。 void dels(sqlist *L) { int s,i; s=0; //正数计数器 for(i=0;iL-n;i++) if(L-data[i]0 s++; //累计当前正数 else if(s0) L-data[i-s]=l-data[i];//向前移动s位 L-n=L-n-s; //调整表长 } + - - + - - + + - + - - + - 1、栈操作的原则是_____。 2、栈和队列通常采用的两种存储方式是 _____。 3、设计算法判断表达式中左右括号是否配对,采用_____数据结构最好。 4、队列在使用中必须设置两个指针,分别指向真正的队头和队尾吗? ? 5、设循环链队列的长度为n,若只设尾指针,则出队和入队的时间复杂度分别是____和____。 O(1)、O(1) 6、若进栈序列为a,b,c,则出栈序列可能有哪些? 7、设进栈序列为A,B,C,D,则出栈序列可以为B,D,A,C吗? 8、头指针为F、尾指针为R、带头结点的链队列为空的条件是____。R==F 9、空串并不是由空白字符组成的串。 1、数组A[1..8][1..10]中,每个元素占3

文档评论(0)

173****7830 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档