C语言版(习题案例库).doc

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

数据结构(含实训)——C语言版 一、填空题 在双链表中要删除已知结点*s,其时间复杂度为 O(1)  。 循环队列用数组data[max]存放其元素值,已知其头、尾指针分别是front和rear,则当前队列中元素的个数是  (m+rear-front)%m    。 具有12个结点的完全二叉树的叶结点有 6 个。 在任何一棵二叉树中,度为0的结点n0和度为2的结点n2之间的关系是 n0=n2+1 。 已知完全二叉树的第4层有4个结点,则其叶子结点数是 6 。 在仅有尾指针rear指示的单循环链表rear中,在表尾插入一个结点s的语句序列是 s-next=rear-next;rear-next=s 。 栈顶的位置是随着 入栈出栈 操作而变化的。 数据结构一般包括三个方面的内容:数据的逻辑结构、数据的存储结构及对数据的运算。 假设以S和X分别表示进栈和出栈操作,则对输入序列1,2,3,4,5进行一系列栈操作SSXSXSSXXX之后,得到的输出序列为 bceda 。 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。 在带头结点的双链表head中,指针p所指结点是开始结点的条件是p-prior==head。 在选择排序、堆排序、快速排序、直接插入排序中,稳定的排序方法是直接插入排序。 在具有n个结点的双链表中做插入、删除运算,平均时间复杂度为O(n)。 队列的队尾位置随着入队而变化。 快速排序在最坏情况下的时间复杂度是O(n2)。 n ( n 0 )个顶点连通无向图的生成树恰有n-1条边。 在一个长度为n的顺序表中第i个元素(1 ≤ i ≤ n+1)之前插入一个元素时,需向后移动n-i+1个元素。 在只有一个数据元素的情况下,链队列的出队操作需要修改尾指针。 数据结构是相互之间存在一种或多种特定关系的数据元素的集合,它包括三方面的内容,分别是数据的逻辑结构、数据的物理结构和数据的运算。 在双循环链表中,若要在指针p所指结点之前插入指针s所指的结点,则需执行下列语句:s-prior=p-prior;p-prior-next=s;s-next=p;和p-prior=s;。 从栈顶指针为top的链栈中删除一个结点,并将被删除的结点的值保存在x中,其操作步骤为x=top-data;top=top-next;。 用数组A[m]来存放循环队列q的元素,且它的头、尾指针分别为front和rear,队列满足条件(q-rear+1)%m==q-front,则队列中当前的元素个数为m-1。 0 A -1 1 B 0 2 C 0 3 D 1 4 E 2 深度为6的二叉树最多有63个结点。 右图为某树的静态双亲表示,则结点D、E的双亲结点分别为 B 和 C 。 已知指针p指向双向链表中的一个结点(非首结点、非尾结点),则将结点s插入在p结点的直接后继位置的语句是s-next=p-next;s-prior=p;s-next-prior=s;p-next=s; 一个二叉树中,度为2的结点有3个,则叶结点有4个。 顺序栈s存储在数组s-data[max]中,对s进行出栈操作,执行的语句序列是x=s-data[s-top];s-top--;。 以下运算实现在循环队列中的初始化操作 void initqueue(seqqueue *q){q-front=0;q-rear=0;} 若二叉树的一个叶子是某子树的中序遍历序列中的第一个结点,则它必是该子树的后根遍历序列中的第一个结点。 对于二叉排序树的查找,若根结点元素的键值大于被查找元素的键值,则应该在该二叉树的左子树上继续查找。 数据的逻辑结构与数据元素本身的内容和形式无关。 程序段“for(i=1;i=n;i++) {k++; for(j=1;j=n;j++) x=x+k;}”的时间复杂度T(n)=O(n2)。 已知带表头结点的单链表L,指针p指向L链表中的一个结点(非首结点、非尾结点),则:删除结点p的直接后继结点的语句是p-next=p-next-next;删除首结点的语句是L=L-next。 二叉树通常有顺序存储结构和链式存储结构两种。 二叉树在二叉链表表示方式下,p指向二叉树的根结点,经运算s=p;while(s-rchild) s=s-rchild后,s指针指向右子树最右结点。 对于n个记录的集合进行冒泡排序,其最坏情况下所需的时间复杂度是O(n2)。 二、选择题 下列算法的时间复杂度是( B )。 for(i=1;i=n;i+ +) c[i]=i; A、O(1) B、O(n) C、O(log2n) D、O(nlog2

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档