数据结构课后习题及答案

合集下载

数据结构课后习题答案详解C语言版严蔚敏

数据结构课后习题答案详解C语言版严蔚敏

数据结构习题集答案(C语言版严蔚敏)第2章线性表2.1 描述以下三个概念的区别:头指针,头结点,首元结点(第一个元素结点)。

解:头指针是指向链表中第一个结点的指针。

首元结点是指链表中存储第一个数据元素的结点。

头结点是在首元结点之前附设的一个结点,该结点不存储数据元素,其指针域指向首元结点,其作用主要是为了方便对链表的操作。

它可以对空表、非空表以及首元结点的操作进行统一处理。

2.2 填空题。

解:(1) 在顺序表中插入或删除一个元素,需要平均移动表中一半元素,具体移动的元素个数与元素在表中的位置有关。

(2) 顺序表中逻辑上相邻的元素的物理位置必定紧邻。

单链表中逻辑上相邻的元素的物理位置不一定紧邻。

(3) 在单链表中,除了首元结点外,任一结点的存储位置由其前驱结点的链域的值指示。

(4) 在单链表中设置头结点的作用是插入和删除首元结点时不用进行特殊处理。

2.3 在什么情况下用顺序表比链表好解:当线性表的数据元素在物理位置上是连续存储的时候,用顺序表比用链表好,其特点是可以进行随机存取。

2.4 对以下单链表分别执行下列各程序段,并画出结果示意图。

解:2.5 画出执行下列各行语句后各指针及链表的示意图。

L=(LinkList)malloc(sizeof(LNode)); P=L;for(i=1;i<=4;i++){P->next=(LinkList)malloc(sizeof(LNode));P=P->next; P->data=i*2-1;}P->next=NULL;for(i=4;i>=1;i--) Ins_LinkList(L,i+1,i*2);for(i=1;i<=3;i++) Del_LinkList(L,i);解:2.6 已知L是无表头结点的单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。

a. 在P结点后插入S结点的语句序列是__________________。

《数据结构》第二版严蔚敏课后习题作业参考答案(1-7章)

《数据结构》第二版严蔚敏课后习题作业参考答案(1-7章)

第1章4.答案:(1)顺序存储结构顺序存储结构是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系,通常借助程序设计语言的数组类型来描述。

(2)链式存储结构顺序存储结构要求所有的元素依次存放在一片连续的存储空间中,而链式存储结构,无需占用一整块存储空间。

但为了表示结点之间的关系,需要给每个结点附加指针字段,用于存放后继元素的存储地址。

所以链式存储结构通常借助于程序设计语言的指针类型来描述。

5. 选择题(1)~(6):CCBDDA6.(1)O(1) (2)O(m*n) (3)O(n2)(4)O(log3n) (5)O(n2) (6)O(n)第2章1.选择题(1)~(5):BABAD (6)~(10):BCABD (11)~(15):CDDAC 2.算法设计题(1)将两个递增的有序链表合并为一个递增的有序链表。

要求结果链表仍使用原来两个链表的存储空间, 不另外占用其它的存储空间。

表中不允许有重复的数据。

[题目分析]合并后的新表使用头指针Lc指向,pa和pb分别是链表La和Lb的工作指针,初始化为相应链表的第一个结点,从第一个结点开始进行比较,当两个链表La和Lb均为到达表尾结点时,依次摘取其中较小者重新链接在Lc表的最后。

如果两个表中的元素相等,只摘取La表中的元素,删除Lb表中的元素,这样确保合并后表中无重复的元素。

当一个表到达表尾结点,为空时,将非空表的剩余元素直接链接在Lc表的最后。

void MergeList(LinkList &La,LinkList &Lb,LinkList &Lc){//合并链表La和Lb,合并后的新表使用头指针Lc指向pa=La->next; pb=Lb->next;//pa和pb分别是链表La和Lb的工作指针,初始化为相应链表的第一个结点Lc=pc=La; //用La的头结点作为Lc的头结点while(pa && pb){ if(pa->data<pb->data){pc->next=pa; pc=pa; pa=pa->next;}//取较小者La中的元素,将pa链接在pc的后面,pa指针后移else if(pa->data>pb->data) {pc->next=pb; pc=pb; pb=pb->next;}//取较小者Lb中的元素,将pb链接在pc的后面,pb指针后移else //相等时取La中的元素,删除Lb中的元素{pc->next=pa;pc=pa;pa=pa->next;q=pb->next; delete pb ; pb =q;}}pc->next=pa?pa:pb; //插入剩余段delete Lb; //释放Lb的头结点}(5)设计算法将一个带头结点的单链表A分解为两个具有相同结构的链表B、C,其中B表的结点为A表中值小于零的结点,而C表的结点为A表中值大于零的结点(链表A中的元素为非零整数,要求B、C表利用A表的结点)。

数据结构课后题答案

数据结构课后题答案
if(pa) /*若表A未完,将表A中后续元素链到新表C表*/ { smaller=pa; pa=pa->next; smaller->next = c->next; c->next = smaller; } /*否则将表B中后续元素链到新表C表尾*/
else {
smaller=pb; pb=pb->next; smaller->next = c->next; c->next = smaller; }
return(C); }
西北大学可视化技术研究所
10.已知有单链表表示的线性表中含有三类字 符的数据元素(如字母字符,数字字符和其它 字符),试编写算法来构造三个以循环链表表 示的线性表,使每个表中只含同一类的字符, 且利用原表中的结点空间作为这三个表的结点 空间,头结点可另辟空间。
西北大学可视化技术研究所
西北大学可视化技术研究所
答案:435612不可以 原因 (1)S:1234 X:43 (2)S:5 X: 5 (3)S:6 X: 6 (4)X:21 135426 可以 原因(1)S:1 X:1 (2)S:23 X: 3 (3)S:45 X: 54 (4)X:2 (5)S:6 X: 6
西北大学可视化技术研究所
G. S->next= NULL; 。
西北大学可视化技术研究所
供选择的语句有:
A. P->next=S; B. P->next= P->next->next; C. P->next= S->next;
E. S->next= P->next; F. S->next= L;
G. S->next= NULL;

数据结构课后习题答案

数据结构课后习题答案

第 1 章绪论课后习题讲解1. 填空⑴()是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。

【解答】数据元素⑵()是数据的最小单位,()是讨论数据结构时涉及的最小数据单位。

【解答】数据项,数据元素【分析】数据结构指的是数据元素以及数据元素之间的关系。

⑶从逻辑关系上讲,数据结构主要分为()、()、()和()。

【解答】集合,线性结构,树结构,图结构⑷数据的存储结构主要有()和()两种基本方法,不论哪种存储结构,都要存储两方面的内容:()和()。

【解答】顺序存储结构,链接存储结构,数据元素,数据元素之间的关系⑸算法具有五个特性,分别是()、()、()、()、()。

【解答】有零个或多个输入,有一个或多个输出,有穷性,确定性,可行性⑹算法的描述方法通常有()、()、()和()四种,其中,()被称为算法语言。

【解答】自然语言,程序设计语言,流程图,伪代码,伪代码⑺在一般情况下,一个算法的时间复杂度是()的函数。

【解答】问题规模⑻设待处理问题的规模为n,若一个算法的时间复杂度为一个常数,则表示成数量级的形式为(),若为n*log25n,则表示成数量级的形式为()。

【解答】Ο(1),Ο(nlog2n)【分析】用大O记号表示算法的时间复杂度,需要将低次幂去掉,将最高次幂的系数去掉。

2. 选择题⑴顺序存储结构中数据元素之间的逻辑关系是由()表示的,链接存储结构中的数据元素之间的逻辑关系是由()表示的。

A 线性结构B 非线性结构C 存储位置D 指针【解答】C,D【分析】顺序存储结构就是用一维数组存储数据结构中的数据元素,其逻辑关系由存储位置(即元素在数组中的下标)表示;链接存储结构中一个数据元素对应链表中的一个结点,元素之间的逻辑关系由结点中的指针表示。

⑵假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女间不能相互继承。

则表示该遗产继承关系的最合适的数据结构应该是()。

数据结构教材课后习题及参考答案习题 (10)[3页]

数据结构教材课后习题及参考答案习题 (10)[3页]

习题6一.填空题1.树中除根结点外,其他结点有且只有个直接前驱结点,但可以有个直接后继结点。

2.树中结点的度,是指结点拥有的个数;一棵具有n个结点的树,该树中所有结点的度数之和为。

3.深度为h的完全二叉树至少有个结点,至多有个结点,若按层序从1开始编号,则编号最小的叶子结点的编号是。

5.将一棵完全二叉树按层序从1进行编号,对编号为i的结点,如果有左孩子,则左孩子的编号应该是;如果有右孩子,则右孩子的编号应该是。

6.一棵完全二叉树有1001个结点,其深度是,叶子结点个数是。

78.树的先根遍历序列与其对应二叉树的遍历序列相同,树的后根遍历序列与其对应二叉树的遍历序列相同。

9.若二叉树共有n个结点,采用线索链表存储其线索二叉树,那么在所有存储结点里,一共有个指针域,其中有个指针是指向其孩子结点的,个指针是指向其前驱后继结点的。

指向前驱后继结点的指针称为。

10.哈夫曼树又称。

它是n个带权叶子结点构成的所有二叉树中,带权路径长度的二叉树。

11.哈夫曼树中,权值较大的叶结点一定离根结点。

由n个带权值的叶结点生成的哈夫曼树中共有个结点,其中有个分支结点。

12.哈夫曼树中不存在度为的结点。

二.选择题1.有关二叉树下列说法正确的是()A.二叉树的度为2 B.一棵二叉树的度可以小于2C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2 2.二叉树的第i层上最多含有结点数为()A.2i B.2i-1-1 C.2i-1D.2i-13.一棵具有1025个结点的二叉树的高度为( )。

A.11 B.10 C.11至1025之间D.10至1024之间4.一棵高度为5的二叉树,其结点总数为()。

A.6~17 B.5~16 C.6~32 D.5~315.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点的个数是( )。

A.9 B.11 C.15 D.不能确定6.一棵完全二叉树具有600个结点,则它有( ) 个度为1的结点。

数据结构课后习题答案(耿国华版

数据结构课后习题答案(耿国华版

第1章绪论2 、(1)×(2)×(3) √3 、(1)A(2)C(3)C5、f or计(算i=下1n程;序中 1 得语句频度for(j=1;j<=i; j++)for(k=1;k<=j;k ++)x=x+1;【解答】 x=x+1 得语句频度为:T(n)=1+(1+2)+(1+2+3)+. …+(1+2+……+n)=n(n+1)(n+2)/66 、编写算法,求一元多项式p。

(x)=a。

+a,x+a₂X2+……、+a Xn得值p(x) 并确定算法中每一语句得执行次数与整个算法得时间复杂度,要求时间复杂度尽可能小,规定算法中不能使用求幂函数.注意:本题中得输入为a,(i=01,…n)、x 与n,输出为P。

(x)。

算法得输入与输出采用下列方法(1)通过参数表中得参数显式传递(2)通过全局变量隐式传递。

讨论两种方法得优缺点,并在算法中以您认为较好得一种实现输入输出.【解答】(1)通过参数表中得参数显式传递优点:当没有调用函数时,不占用内存,调用结束后形参被释放,实参维持,函数通用性强,移置性强。

缺点:形参须与实参对应,且返回值数量有限。

(2)通过全局变量隐式传递优点:减少实参预形参得个数,从而减少内存空间以及传递数据时得时间消耗缺点:函数通用性降低,移植性差算法如下:通过全局变量隐式传递参数PolyValue({ int,in;floatx,a[]p;pri n tf(hn=”);s c anf(“%f,”&n);printf(“x=”;)sca nf(“%f&x);f or(i=0;i<n; i++)s c anf(%f ,&a[i]; /*执行次数:n 次 */p=a[0];for (i=1;i<=n;i++){ p=p+a [i]*x; /*执行次数:n次*/x= x*x;}prin t f(%f” p);}算法得时间复杂度:T(n)=0(n)通过参数表中得参数显式传递f loat PolyVa lue(float a[ ], float x, i nt n)f 1 oat p, s;int;is p a X0];for(=1;i<= n;i++)/执行次数:n 次*/{s=s+a [i]* p;p=p*x;}re turn(p);算法得时间复杂度:T(n)=O(n)第2章线性表习题1、填空:(1)在顺序表中插入或者删除一个元素,需要平均挪移一半元素,具体挪移得元素个数与插入或者删除得位置有关。

数据结构习题及答案——严蔚敏_课后习题答案 精品

数据结构习题及答案——严蔚敏_课后习题答案 精品

第一章绪论选择题1.组成数据的基本单位是()(A)数据项(B)数据类型(C)数据元素(D)数据变量2.数据结构是研究数据的()以及它们之间的相互关系。

(A)理想结构,物理结构(B)理想结构,抽象结构(C)物理结构,逻辑结构(D)抽象结构,逻辑结构3.在数据结构中,从逻辑上可以把数据结构分成()(A)动态结构和静态结构(B)紧凑结构和非紧凑结构(C)线性结构和非线性结构(D)内部结构和外部结构4.数据结构是一门研究非数值计算的程序设计问题中计算机的(①)以及它们之间的(②)和运算等的学科。

①(A)数据元素(B)计算方法(C)逻辑存储(D)数据映像②(A)结构(B)关系(C)运算(D)算法5.算法分析的目的是()。

(A)找出数据结构的合理性(B)研究算法中的输入和输出的关系(C)分析算法的效率以求改进(D)分析算法的易懂性和文档性6.计算机算法指的是(①),它必须具备输入、输出和(②)等5个特性。

①(A)计算方法(B)排序方法(C)解决问题的有限运算序列(D)调度方法②(A)可执行性、可移植性和可扩充性(B)可行性、确定性和有穷性(C)确定性、有穷性和稳定性(D)易读性、稳定性和安全性二、判断题1.数据的机内表示称为数据的存储结构。

()2.算法就是程序。

()3.数据元素是数据的最小单位。

()4.算法的五个特性为:有穷性、输入、输出、完成性和确定性。

()5.算法的时间复杂度取决于问题的规模和待处理数据的初态。

()三、填空题1.数据逻辑结构包括________、________、_________ 和_________四种类型,其中树形结构和图形结构合称为_____。

2.在线性结构中,第一个结点____前驱结点,其余每个结点有且只有______个前驱结点;最后一个结点______后续结点,其余每个结点有且只有_______个后续结点。

3.在树形结构中,树根结点没有_______结点,其余每个结点有且只有_______个前驱结点;叶子结点没有________结点,其余每个结点的后续结点可以_________。

【课后习题及答案】严蔚敏-数据结构课后习题及答案解析

【课后习题及答案】严蔚敏-数据结构课后习题及答案解析

6.算 法 的 五 个 重 要 特 性 是 _______、_______、______、_______、_______。 7.数据结构的三要素是指______、_______和________。 8.链式存储结构与顺序存储结构相比较,主要优点是 ________________________________。 9.设有一批数据元素,为了最快的存储某元素,数据结构宜用_________ 结构,为了方便插入一个元素,数据结构宜用____________结构。
四、算法分析题
for(i=1; i<=n; i++) for(j =1; j <=i ; j++) x=x+1; 分 析 :该 算 法 为 一 个 二 重 循 环 ,执 行 次 数 为 内 、外 循 环 次 数 相 乘 ,但 内 循环次数不固定,与外循环有关,因些,时间频度 T(n)=1+2+3+…+n=n*(n+1)/2 有 1/4≤T(n)/n2≤1,故它的时间复杂度为O(n2), 即T(n)与 n2 数 量级相同。 2、分析下列算法段的时间频度及时间复杂度 for (i=1;i<=n;i++) for (j=1;j<=i;j++) for ( k=1;k<=j;k++) x=i+j-k; 分析算法规律可知时间频度 T(n)=1+(1+2)+(1+2+3)+...+(1+2+3+…+n) 由于有 1/6 ≤ T(n)/ n3 ≤1,故时间复杂度为O(n3)
精品课程
课后习题答案数据结构-严来自敏 课后习题及答案解析第一章 绪论
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间: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.Int f (char*s){Int i=0,j=0;求串长*/for(j--;i<j && s[i]==s[j];i++,j++);return( i>=j);}二、结论题 .在具有n 个结点有序单链表中插入一个新结点并仍然有序的时间复杂度为O(n)。

.对于一个具有n 个结点的单链表,在已知的结点*p 后插入一个新结点的时间复杂度为O(1),在给定值为x 的结点后插入一个新结点的时间复杂度为O(n)。

.设正文产长度为n ,模式串长度为m ,则简单模式匹配算法的时间复杂度为 O(m*n) 。

.对n 个记录进行快速排序时,递归调用而是用的栈所能达到的最大深度为O(n),平均深度为O(log 2n) 。

.克鲁斯卡尔算法的时间复杂度为O(eloge),它对稀疏图较为合适。

.在一棵二叉树中,度为0的结点的个数为N 0,度为2的结点个数为N 2,则有N 0= N 2+1。

深度为k 的完全二叉树至少有2k-1个结点,至多有2k -1 个结点。

.具有n 个结点e 条边的有向图和无向图用邻接表表示,则邻接表的边结点个数分别为e 和2e 条。

.若n 个顶点的连通图是一个环,则它有n 棵生成树。

个顶点的连通图用连接矩阵表示时,该矩阵至少有2(n-1)个非零元素。

.有n 个顶点的有向图,至少需要n 条弧才能保证是连通的。

.归并排序除了在递归是现实所用的log 2n 个栈空间外,还用n 个辅助空间。

.对于采用顺序存储结构的线性表,当随机插入一个数据元素时,平均移动表中n/2元素;删除一个数据元素时, 平均移动表中(n-1)/2元素。

.在一个长度为n 的顺序存储结构的线性表中,向第i 个元素(1≤i ≤n+1)之前插入一个新元素时,需向后边移动 n-i+1个元素。

.从长度为n 的采用顺序存储结构的线性表中删除第i 个元素(1≤i ≤n ),需向前移动n-1个元素。

.当两个栈共享一存储区时,存储区用一维数组stack (1,n )表示,两栈顶指针为top 【1】与top 【2】,则当栈1空时。

top 【1】为0,栈2空时top 【2】为n+1,栈满的条件是top[1]+1==top[2]。

.顺序查找n 个元素的顺序表,若查找成功,则比较关键字的次数最多为n 次;当使用监视哨时,若查找失败, 则比较关键字的次数为n+1。

.设一颗完全二叉树叶子结点数为k ,最后一层结点数为偶数时,则该二叉树的高度为()2log 2k 1-⎢⎥⎣⎦+1,最后一层结点数为奇数时,则该二叉树的高度为()2log 2k ⎢⎥⎣⎦+1。

.对n 个记录建立一个堆的方法是:首先将要排序的所有记录分到一棵二叉树的各个结点中,然后从i=n /2⎢⎥⎣⎦的结点ki ,逐渐把以kn/2,kn/2-1kn/2-2,……为根的子树排成堆,直到以k1根的树排成堆,就完成了初次建堆的过程。

三、计算题STUDENT ”,”STU ”)=4。

.求下列广义表的运算结果:Get Tail{GetHead{{{a,b},{c,d}}}}=(b )。

.已知二叉树先序为ABDEGCF,中序为DBGEACF,则后序一定是DGEBFCA 。

.广义表{a,{a,b},d,e,{{i,j},k}}的长度是5,深度是3。

.具有10个叶子的哈夫曼树,其最大高度为9,最小高度为5。

.已知二叉树有50个叶子结点,则该二叉树的总结点数至少是99。

.设F 是一个森林,B 是由F 转换得到的二叉树,F 中有n 个非终端节点,则B 中右指针域为空的结点有n+1个。

. 表达式23+((12*13-2)/4+34*5/7)+108/9的后缀表达式是23 12 3*2-4/34 5*7/++108 9/+。

. 用s 表示入栈操作。

X 表示出栈操作,若元素入栈的顺序为1,2,3,4,为了得到1,3,4,2出栈顺序,相应的s 和x 的操作串为SXSSXSXX 。

.广义表A={{{a,b},{c,d,e}}},取出A 中的原子e 的操作是:GetTail(GetTail(GetTail(GetHead(A))))。

.一组记录的键值为{12,38,35,25,74,50,63,90},按二路归并排序方法对该序列进行一趟归并后的结果是{12,38,25,35,50,74,63,90}。

. 一个栈的输出序列是,1,2,3,4,5,则不同的输出序列有42种.设串S 的长度为4,则S 的子串个数最多为10。

.有5种不同形态的二叉树可以按中序遍历得到相同的abc 序列。

.若用冒泡排序对关键字序列{50,45,35,19,9,3}进行从小到大的排序,所需进行的关键字比较总次数是15。

.二维数组A[6][8]采用行序为主方式存储,每个元素占4个储存单元,已知A 的起始储存地址{基地址}是1000,则A[2][3]的地址是1076。

.叶子权值(5,6,17,8,19)所构造的哈夫曼树带权路径长度为121。

.在顺序表(8,11,15,19,25,26,30,33,42,48,50)中,用折半法查找关键字20,需要的关键字比较次数为4。

.对于具有144个记录的文件,若采用分块查找法,且每块长度为8,则平均查找长度为或14。

.设数组A[9][10],数组中任一元素均占内存48个二进制位,从首地址2000开始连续存放在主内存里,主内存字长为16位,那么:{1}存放该数组至少需要的单元数是270。

{2}存放数组的第8列的所有元素至少需要的单位数是27。

{3}数组按列存储时,元素A[5][8]的起始地址是2231。

选择题( 15 * 1’ = 15’)一、叙述类.根据数据元素之间关系的不同性,以下解释错误的是()。

A集合中任何两个结点之间都有逻辑关系但组织形式松散B线性结构中结点形成1对1的关系C树形结构具有分支、层次特性,其形态有点像自然界中的树D图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接.关于逻辑结构,以下说法错误的是()。

A逻辑结构是独立于计算机的B运算的定义与逻辑结构无关C同一逻辑结构可以采用不同的存储结构D一些表面上很不相同的数据可以有相同的逻辑结构E逻辑结构是数据组织的某种“本质性”的东西.下面关于算法的说法正确的是()。

A算法的时间效率取决于算法所花费的CPU时间B在算法设计中不能用牺牲空间代价来换取好的时间效率C算法必须具有有穷性、确定性等5个特性D通常用时空效率来衡量算法的优劣.下面关于算法说法错误的是()。

A计算机程序一定是算法B算法只能用计算机高级语言来描述C算法的可行性是指指令不能有二义性D以上几个都是错误的.以下说法正确的是()。

相关文档
最新文档