数据构造课后习题及答案.docx

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据构造课后习题及答案 填空题〔10*1’=10’〕 一、概念题 .当对一个线性表经常进行的是插入和删除操作时,采用链式存储构造为宜。 .当对一个线性表经常进行的是存取操作,而很少进行插入和删除操作时,最好采用顺序存储构造。 .带头结点的单链表L中只要一个元素结点的条件是L->Next->Next==Null。 .循环队列的引入,目的是为了克制假溢出。 .长度为0的字符串称为空串。 .组成串的数据元素只能是字符。 .设T和P是两个给定的串,在T中寻找等于P的子串的经过称为形式匹配,又称P为形式。 .为了实现图的广度优先搜索,除一个标志数组标志已访问的图的结点外,还需要队列存放被访问的结点实现遍历。 .广义表的深度是广义表中括号的重数 .有向图G可拓扑排序的判别条件是有无回路。 .若要求一个稠密图的最小生成树,最好用Prim算法求解。 .直接定址法法构造的哈希函数肯定不会发生冲突。 .排序算法所花费的时间,通常用在数据的比拟和交换两大操作。 .通常从正确性﹑可读性﹑强健性﹑时空效率等几个方面评价算法的〔包括程序〕的质量。 .对于给定的n元素,能够构造出的逻辑构造有集合关系﹑线性关系树形关系﹑图状关系四种。 .存储构造主要有顺序存储﹑链式存储﹑索引存储﹑散列存储四种。 .抽象数据类型的定义仅取决于它的一组逻辑特性,而与存储构造无关,即不管其内部构造怎样变化,只要它的数学特性不变,都不影响其外部使用。 .一个算法具有五大特性:有穷性﹑确定性﹑可行性,有零个或多个输入﹑有一个或多个输入。 .在双向链表构造中,若要求在p指针所指的结点之前插入指针为s所指的结点,则需执行下列语句:s->prior=p->prior;s->next=p;p->prior-next=s;p->prior=s;。 .在单链表中设置头结点的作用是不管单链表能否为空表,头结点的指针均不空,并使得对单链表的操作〔如插入和删除〕在各种情况下统一。 .队列是限制在表的一端进行插入和在另一端进行删除的线性表,其运算遵循先进先出原则。 .栈是限定尽在表位进行插入或删除操作的线性表。 .在链式队列中,断定只要一个结点的条件是(Q->rear==Q->front)&&(Q->rear!=NULL)。 .已知链队列的头尾指针分别是f和r,则将x入队的操作序列是node*p=(node*)malloc(node);p->next=x;p->next=NULL;if(r){r->next=p;r=p;}else{r=p;f=p;}。 .循环队列的满与空的条件是(rear+1)%MAXSIZE==fornt和(front=-1&&rear+1==MAXSIZE)。 .串是一种特殊的线性表,其特殊性表如今数据元素都是由字符组成。 .字符串存储密度是串值所占存储位和实际分配位的比值,在字符串的链式存储构造中其结点大小是可变的。 .所谓稀疏矩阵指的是矩阵中非零元素远远小于元素总数,则称该矩阵为矩阵中非零元素远远小于元素总数,则称该矩阵为稀疏矩阵。 .一维数组的逻辑构造是线性构造,存储构造是顺序存储构造;对二维或多维数组,分别按行优先和列优先两种不同的存储方式。 .在有向图的邻接矩阵表示中,计算第i个顶点入度的方法是求邻接矩阵中第i列非0元素的个数。 网中,结点表示活动,边表示活动之间的优先关系,AOE网中,结点表示事件,边表示活动。 .按排序经过中根据不同原则对内部排序方法进行分类,主要有选择排序﹑交换排序﹑插入排序归并排序等4类。 .在堆排序、快速排序和归并排序中若只从排序结果的稳定性考虑,则应选择归并排序方法;若只从平均情况下排序最快考虑,则应选择快速排序方法;若只从最坏情况下排序最快且要节省类存考虑,则应选择堆排序方法。 .直接插入排序用监视哨的作用是存当前要的插入记录,可又省去查找插入位置时对能否出界的判定。 .设表中元素的初始状态是按键值递增的,则直接插入排序最省时间,快速排序最费时间。 .下列程序判定字符串s能否对称,对称则返回1,否则返回0;如?(“abba〞)返回1,?〔〞abab〞〕返回0. Intf(char*s) { Inti=0,j=0; 求串长*/ for(j--;i=j); } 二、结论题.在具有n个结点有序单链表中插入一个新结点并仍然有序的时间复杂度为O(n)。 .对于一个具有n个结点的单链表,在已知的结点*p后插入一个新结点的时间复杂度为O(1),在给定值为x的结 点后插入一个新结点的时间复杂度为O(n)。 .设正文产长度为n,形式串长度为m,则简单形式匹配算法的时间复杂度为O(m*n)。 .对n个记录进行快速排序时,递归调用而是用的栈所能到达的最大深度为O(n),平均深度为O(log2n)。 .克鲁斯卡尔算法的时间复杂度为O(eloge),它对稀疏图较为适宜

文档评论(0)

安老怀幼 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档