大学数据结构期末考试范围

大学数据结构期末考试范围
大学数据结构期末考试范围

第1章绪论

一、填空题

1.指出下面程序段的时间复杂度、。

(1)for(n=1;n<=100;n++) (2)k=1;

s=s+n;while(k<=n)

k=k*2;

2.算法的五个重要特性是,有穷性、确定性、、

、。

3.指出下面程序段的时间复杂度、。

(1)temp=x; (2)for(p=0;p

x=y; for(q=0;q

y=temp; a[p][q]=0;

4.数据结构被形式定义为(K,R),其中K是数据元素的有限集,R是K上的的有限集。

5.数据的基本单位是。

6.数据结构要从三个方面进行研究,、、。7.数据的逻辑结构主要有线性结构、和图形结构。

8.线性结构中元素之间存在关系,树形结构中元素之间存在关系,图形结构中元素之间存在关系。

9.称算法的时间复杂度为O(f(n)),其含义是指算法的执行时间和的数量级相同。10.数据的逻辑结构有两类,分别是和。

11.数据结构中非线性结构有两类,分别是和。

12.数据的存储主要有两种方法分别是、。

二、选择题

1.在数据结构中,从逻辑上可以把数据结构分成。

A.线性结构和非线性结构B.动态结构和静态结构

C.紧凑结构和非紧凑结构D.内部结构和外部结构

2.算法分析的两个主要方面是。

A.空间复杂度和时间复杂度B.正确性和简单性

C.可读性和文档性D.数据复杂性和程序复杂性

3.数据结构被形式定义为(K,R),其中K是的有限集,R是K上关系的有限集。

A.算法B.数据元素

C.数据操作D.逻辑结构

4.算法必须具备输入、输出和5个特性。

A.可执行性、可移植性和可扩充性B.可行性、确定性和有穷性

C.确定性、有穷性和稳定性D.易读性、稳定性和安全性

5.数据结构是()

A.一种数据类型

B.数据的存储结构

C.一组性质相同的数据元素的集合

D.相互之间存在一种或多种特定关系的数据元素的集合

6.算法分析的目的是()

A.辨别数据结构的合理性

B.评价算法的效率

C.研究算法中输入与输出的关系

D.鉴别算法的可读性

7.下面程序段的时间复杂度是( )

for(i=0;i

for(j=1;j

A[i][j]=0;

A.O(n) B.O(m+n+1) C.O(m+n) D.O(m*n)

第2章线性表

一、填空题

1.在一个单链表中结点p所指结点之后插入一个s所指结点时,应执行s->next= 和p->next= 的操作。

2.在双链表中,每个结点有两个指针域,一个指向,另一个指向。3.在一个长度为n的单链表L中,删除链表中*p的前驱结点的时间复杂度为。

二、选择题

1.线性表若采用链式存储结构时,要求内存中可用存储单元的地址。

A.必须是连续的B.部分地址必须是连续的

C.一定是不连续的D.连续不连续都可以

2.带头结点的单链表head为空的判定条件是。

A.head= =NULL B.head->next= =NULL

C.head->next= =head D.head!=NULL

3.非空的循环单链表head的尾结点(由p所指向)满足。

A.p->next==NULL B.p==NULL

C.p->next==head D.p==head

4.线性表的顺序存储结构是一种的存储结构

A.随机存取B.非随机存取

C.只能在一端进行插入和删除D.一端进行插入另一端进行删除

5.在一个无头结点的单链表中,在p指针所指结点之后插入s所指结点,则执行。

A.s->next=p->next;p->next=s; B.s->next=p;p->next=s;

C.s->next=p->next;p=s; D.p->next=s;s->next=p;

6.在一个单链表中,若删除p所指结点的后续结点,则执行。

A.p->next=p->next->next; B.p=p->next;p->next=p->next->next;

C.p->next=p->next; D.p=p->next->next;

7.不带头结点的单链表head为空的判定条件是。

A.head!==NULL B.head->next==head

C.head->next==NULL D.head==NULL

8.线性表是具有n个的有限序列。

A.数据元素B.字符C.表元素D.信息项

9.在线性表的下列运算中,不改变数据元素之间结构关系的运算是()A.插入B.删除C.排序D.定位

第3章栈和队列

一、填空题

1.栈又称为线性表,队列又称为线性表(选项:后进先出、先进先出)。

2.限制在表的一端进行插入和删除运算的线性表是,它又称为的

线性表。

3.根据存储结构的不同,栈分为、。

4.队列是一种运算受限的线性表,其特点是。

5.栈下溢是指在时进行出栈操作。

6.在队列中,允许进行插入操作的一端称为,允许进行删除操作的一端称为。

7.假设以S和X分别表示进栈和退栈操作,则对输入序列a,b,c,d,e进行一系列栈操作SSXSXSSXXX之后,得到的输出序列为。

二、选择题

1.一个栈的入栈序列是abcde,则不可能的出栈序列是。

A.edcba B.decba

C.dceab D.abcde

2.一个队列的入队序列是1234,则队列的出队序列是。

A.4321 B.1234

C.1432 D.3241

3.判定循环队列Q(最多元素个数为m0)为满的条件是。

A.(Q->rear+1)%m0==Q->front B.Q->front==Q->rear

C.Q->rear-Q->front-1==m0D.Q->front==Q->rear+1

4.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不可能出现的出栈序列为()

A.2,4,3,1,5,6 B.3,2,4,1,6,5

C.4,3,2,1,5,6 D.2,3,5,1,6,4

5.某队列的初始为空,若它的输入序列为abcd,它的输出序列应为。

A.abcd B.dcba C.acbd D.dacb

6.栈和队列的相同之处是。

A.元素的进出满足先进后出B.只允许在端点进行插入和删除操作

C.无共同点D.元素的进出满足先进先出

第4章串

一、填空题

1.串S=“I AM A WORKER”的长度是。

2.已知substr(s,i,len)函数的功能是返回串s中第i个字符开始长度为len的子串,strlen(s)函数的功能是返回串s的长度。若s=“ABCDEFGHIJK”, t= “ABCD”,执行运算substr(s,strlen(t),strlen(t))后的返回值为。

二、选择题

1.设串sl=″Data Structures with Java″,s2=″it″,则子串定位函数index(s1,s2)的值为()

A.15 B.16 C.17 D.18

2.字符串通常采用的两种存储方式是()

A.散列存储和索引存储B.索引存储和链式存储

C.顺序存储和链式存储D.散列存储和顺序存储

第5章数组和广义表

一、填空题

1.广义表(((a)))的表头是,表尾是。

2.假设一个10阶的下三角矩阵A按行优先顺序压缩存储在一维数组B中,则B数组的大小应为。

3.对矩阵采用压缩存储是为了。

4.广义表(a,(a,b),d,e,((i,j),k))的长度为。

二、选择题

1.二维数组A[12][18]采用行优先的存储方法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为()

A.429 B.432 C.435 D.438

2.二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为1087,A[4][7]的存储地址为1153,则数组元素A[6][7]的存储地址为()

A.1207 B.1209 C.1211 D.1213 3.对广义表L=((a,b),(c,d), (e,f))执行操作tail(tail(L))的结果是()A.(e,f) B.((e,f)) C.(f) D.()

第6章树和二叉树

一、填空题

1.在二叉树中,第i(i≥1)层上最多有个结点,具有n个结点的完全二叉树的深度为。深度为k的二叉树最多有个结点。

2.赫夫曼树中没有度为的结点,一棵有n个叶子结点的赫夫曼树共有个结点。

3.完全二叉树的结点按层次编号,如果某结点编号i>1,则其双亲结点的编号是。某子树根结点的编号为n,则其左孩子编号为,右孩子编号为。

4.判断线索二叉树中某结点指针P所指结点有左孩子的条件是。

5.一棵含999个结点的完全二叉树的深度为。

二、选择题

1.按照二叉树的定义,具有3个结点的二叉树有种不同形态。

A.3 B.4 C.5 D.6

2.树最适合用来表示。

A.有序数据元素。B.无序数据元素。

C.元素之间具有分支层次关系的数据。 D.元素之间无联系的数据。

3.在任意一棵二叉树的前序序列和后序序列中,各叶子之间的相对次序关系()A.不一定相同B.都相同C.都不相同D.互为逆序

4.若一棵二叉树有10个度为2的结点,则该二叉树的叶子结点个数是。

A.11 B.9 C.12 D.不确定

5.在非空二叉树的中根遍历序列中,二叉树的根结点的左边。

A.只有左子树上的部分结点B.只有左子树上的所有结点

C.只有右子树上的所有结点D.只有右子树上的部分结点

6.若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A.层次遍历算法B.前序遍历算法

C.中序遍历算法D.后序遍历算法

7.一棵含18个结点的二叉树的高度至少为( )

A.3 B.4 C.5 D.6

8.已知二叉树的先序序列为ABDECF,中序序列为DBEAFC,则后序序列为( ) A.DEBAFC B.DEFBCA C.DEBCFA D.DEBFCA

三、应用题

1.证明对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。2.请证明深度为k的二叉树致多有2k-1个结点(k≥1)。

3.已知一棵二叉树的中序遍历序列为cbedahgijf,后序遍历序列为cedbhjigfa,画出该

二叉树。

4.已知某系统在通信联络中只可能出现八种字符:a,b,c,d,e,f,g,h,其频率分别为:0.05,0.31,0.07,0.06,0.14,0.23,0.03,0.11,试设计哈夫曼编码。要求画出哈夫曼树(标上各结点的权重值),根据构造的哈夫曼树写出每种字符的哈夫曼编码。5.请证明:一棵有n个叶子结点的赫夫曼树共有2n-1个结点

6.已知一树的双亲表示法如下,其中各兄弟结点是依次出现的,画出该树及对应的二叉树。

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

data A B C D E F G H I J K L M N O

parent -1 0 0 0 1 1 2 2 3 3 4 5 5 6 7

7.假设通信电文使用的字符集为{a,b,c,d,e,f},名字符在电文中出现的频度分别为:34,5,12,23,8,15,试为这6个字符设计哈夫曼编码。请先画出你所构造的哈夫曼树(要求树中左孩子结点的权值小于右孩子结点的权值),然后分别写出每个字符对应的编码。

第7章图

一、填空题

1.具有n个顶点的有向完全图有条边。一棵有n个顶点的生成树仅

有边。

2.具有n个顶点的无向图最少有条边,最多有条边。

3.在有向图中,以顶点v为弧尾的弧的数目称为顶点v的;以顶点v为弧头的弧的数目称为顶点v的。

4.在用于表示有向图的邻接矩阵中,对第i行的元素进行累加,可得到第i个顶点的度,而对第j列的元素进行累加,可得到第j个顶点的度。

5.对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为

相关主题
相关文档
最新文档