数据结构(本)期末综合练习

数据结构(本)期末综合练习
数据结构(本)期末综合练习

数据结构(本)期末综合练习

综合练习一

一、单项选择题

1.对稀疏矩阵进行压缩存储,可采用三元组表,一个10 行8列的稀疏矩阵A共有73

个零元素,其相应的三元组表共有( C )个元素。

A.8 B.80 C.7 D.10

2. 对稀疏矩阵进行压缩存储,可采用三元组表,一个10 行8列的稀疏矩阵A,其相应的

三元组表共有6个元素,矩阵A共有( C )个零元素。

A.8 B.72 C.74 D.10

3.字符串( A )是“abcd321ABCD”的子串。

A. “21AB”

B. “abcD”

C. “aBCD”

D. “321a”

4. 程序段

char a[ ]=“abdcacdef”;

char *p=a; int n=0;

while( *p!=‘\0’){ n++; p++;} 结果中,n的值是( D )。

A. 6

B.8

C. 7

D.9

5.栈和队列的共同特点是( A )。

A.都是操作受限的线性结构B.元素都可以随机进出

C.都是先进后出D.都是先进先出

6. 10,6,2,1按顺序依次进栈,该队列的可能输出序列是( A )。

(进栈出栈可以交替进行)。

A.6,10,1,2 B.2,10,6,1 C.6,1,10,1 D.1,6,10,2

7. 在一个链队中,假设f和r分别为队头和队尾指针,p指向一个新结点,要为结点p

所指结点赋值x,并入队的运算为p->data=x; p->next=NULL;(B )。

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

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

8. 对一个栈顶指针为top的链栈进行出栈操作,用变量e保存栈顶元素的值,则执行

( B )。

A.e= top->next; top->data=e;

B.e=top->data; top=top->next;

C.top=top->next; e=top->data;

D.top=top->next; e=data;

9. 数据结构中,与所使用的计算机无关的是数据的( A ) 结构。

A.逻辑

B.存储

C.逻辑与存储

D.物理

10. 算法的时间复杂度与( A )有关。

A. 算法本身

B. 所使用的计算机

C. 算法的程序设计

D. 数据结构

11.顺序表所具备的特点之一是(A )。

A.可以随机访问任一结点B.不需要占用连续的存储空间

C.插入元素的操作不需要移动元素D.删除元素的操作不需要移动元素

12.在一个单向链表中,在p所指结点之后插入一个s所指的结点时,可执行

s->next=p->next; 和( D )。

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

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

13. 数据元素是数据的基本单位,它( C )。

A.只能有一个数据项组成

B.至少有二个数据项组成

C.可以是一个数据项也可以由若干个数据项组成

D.至少有一个数据项为指针类型

14. 一种逻辑结构在存储时(C)。

A.只要存储数据元素间的关系B.只能采用一种存储结构

C.可采用不同的存储结构D.只要存储数据元素的值

15.设有头指针为head的非空的单向链表, 指针p指向其尾结点, 要使该单向链表成为单向循环链表,则可利用下述语句(C )。

A.p =head; B.p=NULL; C.p->next =head; D.head=p;

16.单向链表所具备的特点是( C )。

A.可以随机访问任一结点

B.占用连续的存储空间

C.插入删除不需要移动元素

D.可以通过某结点的指针域访问其前驱结点

17. 在线性表的顺序结构中,以下说法正确的是(C )。

A.逻辑上相邻的元素在物理位置上不一定相邻

B.数据元素是不能随机访问的

C.逻辑上相邻的元素在物理位置上也相邻

D.进行数据元素的插入、删除效率较高

18.数据结构在计算机内存中的表示是指( B ) 。

A.数据元素之间的关系B.数据的存储结构

C.数据元素的类型D.数据的逻辑结构

19.对链表, 以下叙述中正确的是(A )。

A.不能随机访问任一结点B.结点占用的存储空间是连续的

C.插入删除元素的操作一定要要移动结点D.可以通过下标对链表进行直接访问

20.下面关于线性表的叙述中,错误的是( B )。

A . 线性表采用顺序存储,必须占用一片连续的存储空间。

B. 线性表采用顺序存储,进行插入和删除操作,不需要进行数据元素间的移动。

C. 线性表采用链式存储,不必占用连续的存储空间。

D. 线性表采用链式存储,进行插入删除操作,不需要移动元素

21 .设有一个长度为35的顺序表,要在第5个元素之前插入1个元素(也就是插入元素

作为新表的第5个元素),则移动元素个数为(B )。

A.30 B.31 C. 5 D.6

22 .设有一个长度为18的顺序表,要在第5个元素之前插入1个元素(也就是插入元素

作为新表的第5个元素),则移动元素个数为(B )。

A.15 B.14 C. 5 D.6

23.设有一个长度为40的顺序表,要删除第10个元素(下标从1开始)需移动元素的个数为( C )。

A.11 B.10 C.30 D.31

24.设有一个长度为25的顺序表,要删除第10个元素(下标从1开始)需移动元素的个数为( C )。

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

25.设有一个25阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则矩阵中元素a7,5在一维数组B中的下标是(C )。

A.25 B.24 C.26 D.27

26.设有一个18阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则矩阵中元素a10,8在一维数组B中的下标是(D )。

A.62,B.63 C.51 D.53

27.线性表在存储后,如果相关操作中有要求:利用已知的指向某结点的指针或序号,访问该结点的前驱结点,则采用(A )的存储方式是不可行的。

A.单向链表B.双向链表C.单向循环链表D.顺序表

28.在一个尾指针为rear的不带头结点的单循环链表中,插入一个s所指的结点,并作为第一个结点,可执行s→next=rear→next ;和( D )。

A.rear→next= s→next; B.rear =s→next;

C.rear=s; D.rear→next=s;

29.在一棵二叉树中,若编号为i的结点存在左孩子,i结点的左孩子的顺序编号为(B )。

A.i/2.0 B.2*i C.2*i+1 D.i+2 30.在一棵二叉树中,若编号为15的结点是其双亲结点的右孩子,则双亲结点的顺序编号为(D )。

A.30 B.8 C.31 D.7

二、填空题

1. 广义表( ( b,a,c) ,c ,d , f , e , ( (i , j ) , k ) ) 的长度是___ 6_____。

2. 结构中的元素之间存在一对多的关系是___树形_____结构。

3. 数据结构中,数据元素之间的抽象关系称为____逻辑____结构。

4. 结构中的元素之间存在多对多的关系是___图状_____结构。

5. 栈的操作特点是后进___先出_____ 。

6. 循环队列的最大存储空间为MaxSize ,若队头指针front,队尾指针rear,采用少用一个存储空间以有效地判断栈空或栈满,队空的判定条件为___ rear==front为真_____ 。

7. 广义表(( b,a,c) ,c ,d , f , e ,( (i , j ) , k ) ) 的表头是____(b,a,c)____。

8. 广义表( ( b,a,c) ,c ,d , f , e , ( (i , j ) , k ) ) 的长度是____ 6____。

9. 设有一个长度为18的顺序表, 第8号元素到第18号元素依次存放的值为8,9, (18)

某人想要删除第8号元素,程序中他的做法是用语句for(i=18;i<=9;i--)a[i-1]=a[i];

即从第18号元素开始, 直到第9号元素,每个元素依次向前(左)移动1个位置.事实上这样做是错误的.其结果新表中第9号元素的值为___ 18 _____。

10.要求在n个数据元素中找值最大的元素,其基本操作为元素间的比较。算法的时间复杂

度为____ O(n)___ 。

11. 一棵二叉树,有1个2度结点,,2个1度结点,则该树共有_ 5______个结点。

12.一棵有8个叶结点的二叉树,其1度结点的个数为3,则该树共有___ 18____个结点。13.设有一棵深度为5的完全二叉树,该树共有21个结点,第5层上有 6 个结点。(根所在结点为第1层)

14.对于一棵具有n个结点的二叉树,其相应的链式存储结构中共有__ n+1______个指针域为空。

15.中序遍历____二叉排序树____树可得到一个有序序列。

16. 对一组记录(5,8,9,2,12,7,56,44,39)进行直接插入排序(由小到大排序) ,当把第6个记录7插入有序表,为寻找插入位置需比较__ 4______次。

17. 序列12,10,13,11,16,14,采用冒泡排序算法,经一趟冒泡后,序列的结果是____ 10,12,11,13,14,16____。

(按升序排序)

18.设有一棵深度为6的完全二叉树,第6层上有3个结点,该树共有__ 34_____个结点。(根所在结点为第1层)

19. 对16个元素的序列用冒泡排序法进行排序,共需要进行___ 15_____趟冒泡。

20.一棵有16个叶结点的哈夫曼树,则该树共有___ 31____个结点。

21. 一棵有16个叶结点的哈夫曼树,则该树共有__ 15_____个非叶结点。

22. 20个元素进行冒泡法排序,通常第6趟冒泡要进行__ _ 14___次元素间的比较。

23. 在对一组记录(40,24,82,9,1,78,46,31,69)进行直接插入排序(由小到大排

序) ,当把第7个记录46插入到有序表时,为寻找插入位置需比较____3____次。24.对稀疏矩阵进行压缩存储,可采用三元组表,一个6行7列的稀疏矩阵A共有38个零元素,其相应的三元组表共有____4___个元素。

三、综合题

1.

设有序表为(5, 8, 14, 15, 33, 51, 61, 73, 81, 82, 93) ,元素的序号依次为

1,2,3, (11)

(1)画出对上述查找表进行折半查找所对应的判定树(树中结点可用序号表示)(2)说明成功查找到元素33需要经过多少次比较?

(3) 在等概率条件下, 给出成功查找的平均查找长度

(1)图4

51

14 81

5 15 61 82

8 33 73 93

(2) 4次

(3) ( 1+2*2+3*4+4*4)/11=33/11=3

2.

设数据集合a={1,5,8,3,10,7,13,9}

(1)依次取a中各数据,构造一棵二叉排序树。

(2)对该二叉树进行查找,成功查找到7要进行多少次元素间的比较?

(3)给出对该二叉树中序遍历的序列。

(1) 图5

(2) 4次

(3) 中序遍历1, 3 , 5 ,7 , 8 , 9 , 10 , 13

3.

(1)如图1所示,若从顶点a出发,首先经过c按图的深度优先搜索法进行遍历,给出可能得

到的一种顶点序列。

图1

(1) acdbfeh

(2) 152364 或152634 或156234

(2)设有向图如图2所示下,写出首先删除顶点1的1种拓扑序列

图2

4.

设有序表为(30, 48, 58, 70, 78, 79, 90) ,元素的序号依次为1,2,3, (7)

(1)画出对上述查找表进行折半查找所对应的判定树(树中结点用序号表示)(2)给出有序表中经3次比较成功查找到的所有元素

(3) 说明不成功查找元素59需要经过多少次比较?

(1)图6

70

48 79

30 58 78 90

(2) 30 58 78 90

(3) 3次

5.

(1) 设数据集合a={7,4,9,8,6,5,3},依次取a中各数据,构造一棵二叉排序树。

(2)对该二叉树进行查找,成功查找到5要进行多少次元素间的比较?

(3) 给出对上述二叉排序树进行中序遍历的序列

(1) 图7

(2) 4

(3) 3,4,,5,6,7,8,9

6.

(1) 如图3所示,若从顶点a出发,首先经过c按广度优先搜索法进行遍历,给出可能得

到的一种顶点序列。

(2)同图3所示, 若从顶点h出发,按深度优先搜索法进行遍历,给出可能得到的2种顶点

序列。

图3

(3)

一组记录的关键字序列为(75,63,95,80,53,45,38,20),利用堆排序的方法建立小根堆(堆顶元素是最小元素),给出按筛选法建立的的初始堆。

(1) acefdh

(2) hdeacf hdfcae

(3)

20, 53,38,63,75,45,95,80

四、程序填空题

1.以下函数在a[0]到a[n-1]中,用折半查找算法查找关键字等于k的记录,查找成功返回该记录的下标,失败时返回-1,完成程序中的空格

typedef struct

{ int key;

……

}NODE;

int Binary_Search(NODE a[],int n, int k)

{

int low,mid,high;

low=0;

high=n-1;

while(___(1)_____)

{

mid=(low+high)/2;

if(a[mid].key==k)

return __(2)______;

else if(___(3)_____)

low=mid+1;

else __(4)______;

}

___(5)_____;

}

(1) low<=high

(2) mid

(3) a[mid].key < k

(4) high=mid -1

(5) return -1

2.以下函数为直接选择排序算法,对a[1],a[2],…a[n]中的记录进行直接选择排序,完成程序中的空格

typedef struct

{ int key;

……

}NODE;

void selsort(NODE a[ ],int n)

{

int i,j,k;

NODE temp;

for(i=1;i<= ___(1)___;i++)

{ k=i;

for(j=i+1; ___(2)__; j++)

if(a[j].key

if(i!=k)

{ temp=a[i];

___(4)____;

___(5)____;

}

}

}

(1) n-1

(2) j<=n

(3) k=j

(4) a[i]=a[k]

(5) a[k]=temp

3.以下函数为链栈的进栈操作,x是要进栈的结点的数据域,top为栈顶指针

struct node

{ ElemType data;

struct node *next;

};

struct node *top ;

void Push(ElemType x)

{ struct node *p;

p=(struct node*)malloc(___(1)___);

p->data=x;

__ (2)____;

___(3)___;

}

(1) sizeof(struct node)

(2) p next=top

(3) top=p

4.以下函数为链队列的入队操作,x为要入队的结点的数据域的值,front、

rear分别是链队列的队头、队尾指针

struct node

{ ElemType data;

struct node *next;

};

struct node *front,*rear;

void InQueue(ElemType x)

{

struct node *p;

p= (struct node*) ___(1)_____;

p->data=x;

p->next=NULL;

___(2)_____; ;

rear= ___(3)_____;

}

(1) malloc(sizeof(struct node))

(2) rear->next=p;

(3) rear=p;

综合练习二

一、单项选择题

1. 对稀疏矩阵进行压缩存储,可采用三元组表,一个有10 行的稀疏矩阵A共有97个零元素,其相应的三元组表共有3个元素。该矩阵A有( D )列。

A.8 B.9

C.7 D.10

2 .单向链表所具备的特点是( C )。

A.可以随机访问任一结点

B.占用连续的存储空间

C.插入删除不需要移动元素

D.可以通过某结点的指针域访问其前驱结点

3. 子串“acd”在主串“abdcacdefac”中的位置是( B ) 。

A.3 B.5

C.7 D.1

4 .设有一个长度为18的顺序表,要在第6个元素之前插入一个元素(也就是插入元素作

为新表的第6个元素),则移动元素个数为( C )。

A.12 B.5 C. 13 D.6

5. 序列12,16,8,4按顺序依次进栈,按该栈的可能输出序列依次入队列,该队列的不可能输出序列是(B )。(进栈、出栈可以交替进行)。

A.16,12,8,4 B.4,8,12,16

C.8,4,16,12 D.16,12,4,8

6.栈和队列的共同特点是(A )。

A.都是线性结构B.元素都可以随机进出

C.都是先进后出D.都是先进先出

7. 在一个不带头结点的链队中,假设f和r分别为队头和队尾指针,对该队列进行出队

操作,并把结点的值保存在变量e中,其运算为( C )。

A.e=f->data;r=r->next; B.e=f->data;r->next=r;

C.e=f->data;f=f->next; D.e=f->data;f->next=f;

8.元素1,3,5,7按顺序依次入队列,按该队列的出队序列进栈,该栈的可能输出序列是( D )(进栈出栈可以交替进行)。

A.7,5,1,3 B.7,3,1,5

C.5,1,3,7 D.7,5,3,1

9. 数据的逻辑结构在计算机内存中的表示是( B )。

A.给相关变量分配存储单元

B.数据的存储结构

C.数据的逻辑结构

D.算法的具体体现

10.在一个不带头结点的链队中,假设f和r分别为队头和队尾指针,则对该队列进行

出队操作中并把结点的值保存在变量e中,其运算为e=f→data;和( C )。

A.r=r→next; B.r→next=r;

C.f=f→next; D.f→next=f

11. 以下说法正确的是( B )。

A. 线性表的链式存储结构必须占用连续的存储空间

B. 一种逻辑结构可以有不同的存储结构

C.一种逻辑结构只能有唯一的存储结构

D.线性表的顺序存储结构不必占用连续的存储空间

12.设有一个对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),B数组共有45个元素,则该矩阵是(D )阶的对称矩阵。

A.15 B.11 C.10 D.9

13.在一个单链表中要删除p所指结点的后继结点,可执行q=p->next; 和( A )。

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

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

14. 下列是C语言中〝abcd321ABCD〞的子串的选项是(A )。

A. 〝21ABC〞

B.〝abcABCD〞

C. abcD

D. 〝321a〞

15. 在数据结构和算法中,与所使用的计算机有关的是( B )。

A.数据元数间的抽象关系B.数据的存储结构

C.算法的时间复杂度D.数据的逻辑结构

16. 字符串a1=〝BEIJING〞, a2 =〝BEF〞, a3= 〝BEFANG〞, a4=“BEFI〞最小的是( B ).

A. a1

B. a2

C. a3

D. a4

17. 以下表中可以随机访问的是(D )。

A.单向链表B.双向链表

C.单向循环链表D.顺序表

18.一棵有20个结点采用链式存储的二叉树中,共有( A )个指针域为空。

A.21 B.20 C.19 D.18

19.头指针为head的不带头结点的单向链表为空的判定条件是逻辑表达式( A )为真。

A. head= =NULL

B. head->next= =NULL

C. head->next=NULL

D. head->next!= NULL

20.设一棵哈夫曼树共有18个叶结点,则该树有( C )个非叶结点。

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

21 .设有一个长度为32的顺序表,要在第5个元素之前插入1个元素(也就是插入元素

作为新表的第5个元素),需移动元素个数为(B )。

A.25 B.28 C. 5 D.6

22.如图1所示的一个图,若从顶点g出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为(D )。

A.gabecdf B.gacfebd C.gaebcfd D.gaedfcb

2017年数据结构期末考试题及答案A

2017年数据结构期末考试题及答案 一、选择题(共计50分,每题2分,共25题) 1 ?在数据结构中,从逻辑上可以把数据结构分为 C 。 A. 动态结构和静态结构B?紧凑结构和非紧凑结构 C.线性结构和非线性结构 D .内部结构和外部结构 2?数据结构在计算机内存中的表示是指 A ° A. 数据的存储结构 B.数据结构 C.数据的逻辑结构 D .数据元 素之间的关系 3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。 A. 逻辑B?存储 C.逻辑和存储 D.物理 4 .在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C ° A.数据的处理方法B?数据元素的类型 C.数据元素之间的关系 D.数据的存储方法 5. 在决定选取何种存储结构时,一般不考虑 A ° A.各结点的值如何B?结点个数的多少 C?对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。 6. 以下说法正确的是D ° A. 数据项是数据的基本单位 B. 数据元素是数据的最小单位 C. 数据结构是带结构的数据项的集合 D. —些表面上很不相同的数据可以有相同的逻辑结构 7. 在以下的叙述中,正确的是B ° A. 线性表的顺序存储结构优于链表存储结构 B. 二维数组是其数据元素为线性表的线性表 C?栈的操作方式是先进先出 D.队列的操作方式是先进后出

8. 通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 A. 数据元素具有同一特点 B. 不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致 C. 每个数据元素都一样 D. 数据元素所包含的数据项的个数要相等 9 ?链表不具备的特点是 A 。 A.可随机访问任一结点 B.插入删除不需要移动元素 C?不必事先估计存储空间 D.所需空间与其长度成正比 10. 若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一 个结点,则采用 D 存储方式最节省运算时间。 A.单链表B ?给出表头指针的单循环链表 C.双链表D ?带头结点 的双循环链表 11. 需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 B 。 A.单链表B .静态链表 C.线性链表 D .顺序存储结构 12 .非空的循环单链表head的尾结点(由p所指向)满足C 。 A. p—>next 一NULL B. p — NULL C. p—>next == head D. p = = head 13 .在循环双链表的p所指的结点之前插入s所指结点的操作是 D 。 A .p—> prior-> prior=s B .p—> prior-> n ext=s C.s —> prior—> n ext = s D.s —> prior—> prior = s 14 .栈和队列的共同点是C 。 A.都是先进后出 B .都是先进先出 C.只允许在端点处插入和删除元素 D .没有共同点

上数据结构期末图习题答案

2014 上数据结构期末复习大纲 一. 期中前以期中考试试卷复习,算法要真正理解 二、二叉树、图、排序算法将是考试重点(占60%左右) 三、要掌握的算法 1. 二叉树的链表表示 2.建立二叉树的链表存储结构 3. 先序、中序、后序遍历二叉树(递归算法) 4. 遍历算法的应用(如求二叉树的结点数) 5.建立huffman树和huffman编码 6. 图的邻接矩阵表示和邻接链表表示 7.图的深度优先遍历和广度优先遍历算法 8. 有向图求最短路径(迪杰斯特拉算法) 9. 直接插入排序算法 10. shell 排序(排序过程) 12. 堆排序(排序过程)

练习题 1. 有8个结点的无向图最多有 B 条边。 A .14 B. 28 C. 56 D. 112 2. 有8个结点的无向连通图最少有 C 条边。 A .5 B. 6 C. 7 D. 8 3. 有8个结点的有向完全图最多有 C 条边。 A .14 B. 28 C. 56 D. 112 4. 用邻接表表示图进行广度优先遍历时,通常是采用 B 来实现算法的。 A .栈 B. 队列 C. 树 D. 图 5. 用邻接表表示图进行深度优先遍历时,通常是采用 A 来实现算法的。 A .栈 B. 队列 C. 树 D. 图 6. 已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是*( C ) A .0 2 4 3 1 5 6 B. 0 1 3 6 5 4 2 C. 0 4 2 3 1 6 5 ??? ? ?? ? ? ? ? ? ???????????0100011101100001011010110011001000110010011011110

数据结构考试题库

数据结构考试题库

绪论 一、填空题 1.数据的逻辑结构被分为集合、(线性结构)、(树形结构)和(图状结构)四种。 2.物理结构是数据结构在计算机中的表示,又称为(存储结构)。 3.数据元素的逻辑结构包括( 线性)、(树)和图状结构3种类型,树形结构和图状结构合称为(非线性结构)。 4.(数据元素)是数据的基本单位,(数据项)是数据不可分割的最小单位。 5.线性结构中元素之间存在(一个对一个)关系,树形结构中元素之间存在(一个对多个)关系,图状结构中元素之间存在(多个对多个)关系。 ?6.数据结构是一门研究非数值计算的程序设计问题中:计算机的(数据元素)以及它们之间的(关系)和(运筹)等的学科。 7.算法的五个重要特性为有穷性、确定性、(输入)、(输出)和(可行性)。 二、选择题 1.数据的不可分割的基本单位是(D)。 A.元素 B.结点 C.数据类型 D.数据项 *2.线性表的逻辑顺序与存储顺序总是一致的,这种说法(B)。 A.正确 B.不正确 C.不确定 D.无法选择 3.线性结构是指数据元素之间存在一种(D)。 精心整理,用心做精品2

A.一对多关系 B.多对多关系 C.多对一关系 D.一对一关系 4.在数据结构中,从逻辑上可以把数据结构分成(A)。 A.动态结构和静态结构 B.紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构 5.线性表若采用链式存储结构时,要求内存中可用存储单元的 地址( D)。 A.必须是连续的 B.部分地址必须是连续的 C.一定是不连续的 D.连续不连续都可以 三、简答题 1.算法的特性是什么。 答:有穷性确定性可行性有0或多个输入有1或多个输出线性结构 一、填空题 1.在一个长度为n的线性表中删除第i个元素(1≤i≤n)时,需向前移动(n-i)个元素。 2.从循环队列中删除一个元素时,其操作是(先移动队首指针,后取出元素)。 3.在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为(p->next)。 4.在一个单链表中指针p所指向结点的后面插入一个指针q所指向的结点时,首先把(p->next)的值赋给q->next,然后(q->date)的值赋给p->next。 5.从一个栈删除元素时,首先取出(栈顶元素),然后再使(栈顶指针)减1。 6.子串的定位操作通常称做串的(模式匹配)。 精心整理,用心做精品3

数据结构 期末考试复习题及答案

1.什么是最小生成树?简述最小生成树的Prime算法的思想。 答:最小生成树就是构造一棵生成树,使得树上各边的代价之和最小。 普里姆算法(Prim)的基本思想: 从连通网络N = { V, E }中的某一顶点u0 出发,选择与它关联的具有最小权值的边(u0, v),将其顶点加入到生成树的顶点集合U中。以后每一步从一个顶点在U中,而另一个顶点不在U中的各条边中选择权值最小的边(u, v),把它的顶点加入到集合U中。如此继续下去,直到网络中的所有顶点都加入到生成树顶点集合U中为止。 2.简述AOV网络中为何不能出现回路,如何判断AOV网络是否有回路? 答:在AOV网络中,如果活动vi必须在vj之前进行,则称为存在有向边;在AOV网络中不能出现有向回路,如果出现了,则意味着某项活动应以自己作为先决条件。 如何检查AOV网是否存在有向环: 检测有向环的一种方法是对AOV网络构造它的拓扑有序序列。即将各个顶点(代表各个活动)排列成一个线性有序的序列,使得AOV网络中所有应存在的前驱和后继关系都能得到满足。(1)这种构造AOV网络全部顶点的拓扑有序序列的运算就叫做拓扑排序。 (2)如果通过拓扑排序能将AOV网络的所有顶点都排入一个拓扑有序的序列中,则该AOV 网络中必定不会出现有向环;相反,如果得不到满足要求的拓扑有序序列,则说明AOV网络中存在有向环,此AOV网络所代表的工程是不可行的。

3.为何需要采用循环队列?n个空间的循环队列,最多存储多少个元素?为什 么? 答:循环队列以克服顺序队列的"假上溢"现象,能够使存储队列的向量空间得到充分的利用,所以采用循环队列。 n个空间的循环队列,最多存储n-1个元素,那是为了区别循环队列的队空和队满的条件。队空的条件是Q.front==Q.rear,而队满的条件是(Q.rear+1)%N==Q.front(N是数组中单元的总数),因此,Q.rear所指向的数组单元处于未用状态。所以说,N个单元的数组所存放的循环队列最大长度是N-1。 4.简述堆的删除算法,其删除的是那个值? 答:堆的删除算法:首先,移除根节点的元素(并把根节点作为当前结点)比较当前结点的两个孩子结点的元素大小,把较大的那个元素移给当前结点,接着把被移除元素的孩子结点作为当前结点,并再比较当前结点的孩子的大小,以此循环,直到最后一个叶子结点的值大于或等于当前结点的孩子结点或孩子结点的位置超过了树中元素的个数,则退出循环。最后把最后叶子结点的元素移给当前结点。 在堆的算法里面,删除的值为根值。 5.线索二叉树中,什么是线索,它是否唯一?可有根据什么顺序得到?

数据结构期末考试试题及答案

数据结构期末考试试题及答案 、选择题 评价一个算法时间性能的主要标准是()。1. A、算法易于调试 B、算法易于理解 C、算法的稳定性和正确性 D、算法的时间复杂度 )等五个特性。计算机算法具备有输入、输出、 2. A、可行性、可移植性和可扩充性 B、可行性、确定性和有穷性 C、确定性、有穷性和稳定性 D、XX、稳定性和XX 。带头结点的单链表head为空的判定条件是()3. A、h ead==NULL B、h ead->next==NULL C、head->next==head D、head!=NULL 以下关于线性表的说法不正确的是()。4. A、线性表中的数据元素可以是数字、字符、记录等不同类型。 B、线性表中包含的数据元素个数不是任意的。

C、线性表中的每个结点都有且只有一个直接前趋和直接后继。 D、存在这 样的线性表:表中各结点都没有直接前趋和直接后继。 在顺序表中,只要知道(),就可在相同时间内求出任一结点的存储地址。 5.A、基地址 B、结点大小 C、向量大小 D、基地址和结点大小 ()运算中,使用顺序表比链表好。6. A、插入 B、删除 C、根据序号查找 D、根据元素值查找一个长度为n的顺序表中,向第i个元素之前插入一个新元素时,需要向后移动()个元素7.A、n-i B、n-i+1 C、n-i-1 D、i ()适合作为经常在首尾两端操作线性表的存储结构。8. A、顺序表 B、单链表 C、循环链表 D、双向链表

栈和队列的共同点是() 9. A、都是先进后出 B、都是先进先出 C、只允许在端点处插入和删除元素 D、没有共同点 一个队列的入列序列是1234,则队列的输出序列是()。10. A 、4321 B 、12 3 4 C 、1432 D 、 3241队列与一般的线性表的区别在于()。11. A、数据元素的类型不同 B、运算是否受限制 C、数据元素的个数不同 D、逻辑结构不同 假上溢”现象会出现在()中。12. A、循环队列 B、队列 C、链队列 、顺序队列D.二、填空

数据结构复习资料,java数据结构期末考试

第二章算法分析 1.算法分析是计算机科学的基础 2.增长函数表示问题(n)大小与我们希望最优化的值之间的关系。该函数表示了该算法的时间复杂度或空间复杂度。增长函数表示与该问题大小相对应的时间或空间的使用 3.渐进复杂度:随着n的增加时增长函数的一般性质,这一特性基于该表达式的主项,即n 增加时表达式中增长最快的那一项。 4.渐进复杂度称为算法的阶次,算法的阶次是忽略该算法的增长函数中的常量和其他次要项,只保留主项而得出来的。算法的阶次为增长函数提供了一个上界。 5.渐进复杂度:增长函数的界限,由增长函数的主项确定的。渐进复杂度类似的函数,归为相同类型的函数。 6.只有可运行的语句才会增加时间复杂度。 7. O() 或者大O记法:与问题大小无关、执行时间恒定的增长函数称为具有O(1)的复杂度。 增长函数阶次 t(n)=17 O(1) t(n)=3log n O(log n) t(n)=20n-4 O(n) t(n)=12n log n + 100n O(n log n) t(n)=3n2+ 5n - 2 O(n2) t(n)=8n3+ 3n2O(n3) t(n)=2n+ 18n2+3n O(2n) 8.所有具有相同阶次的算法,从运行效率的角度来说都是等价的。 9.如果算法的运行效率低,从长远来说,使用更快的处理器也无济于事。 10.要分析循环运行,首先要确定该循环体的阶次n,然后用该循环要运行的次数乘以它。(n 表示的是问题的大小) 11.分析嵌套循环的复杂度时,必须将内层和外层循环都考虑进来。 12.方法调用的复杂度分析: 如:public void printsum(int count){ int sum = 0 ; for (int I = 1 ; I < count ; I++) sum += I ; System.out.println(sun); } printsum方法的复杂度为O(n),计算调用该方法的初始循环的时间复杂度,只需把printsum方法的复杂度乘以该循环运行的次数即可。所以调用上面实现的printsum方法的复 杂度为O(n2)。 13指数函数增长> 幂函数增长> 对数函数增长

数据结构 习题答案

第1章概论 1. 数据结构是一门研究非数值计算的程序设计问题中,数据元素的①C、数据信息在计算机中的②A以及一组相关的运算等的课程。 ①A.操作对象B.计算方法C.逻辑结构D.数据映象 ②A.存储结构B.关系C.运算D.算法 2. 计算机算法指的是① C ,它必具备输入、输出和② B 等五个特性。 ① A. 计算方法 B. 排序方法 C. 解决问题的有限运算序列 D. 调度方法 ② A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性 C. 确定性、有穷性和稳定性 D. 易读性、稳定性和安全性 3.下面程序段的时间复杂度是D for(i=0;inext = p; p->next = s; B. s->next = p->next; p->next = s; C. s->next = p->next; p = s; D. p->next = s; s->next = p; 2.非空的不带头结点的循环单链表,首结点由first指向,尾结点由p指向,则满足: C A. p->next == NULL; B. p == NULL; C. p->next == first; D. p == first; 3.在一个长度为n的顺序存储的线性表中,删除第i个元素(0≤i≤n-1)时,需要移动多少个元素?C A. n-i B. n-i+1 C. n-i-1 D. I 4.在带头结点指针head的单链表中,链表为空的判断条件是?B A. head == NULL B. head->next == NULL C. head != NULL D. head->next == head; 5.在单链表中,指针p指向元素为x的结点,实现“删除x的后继”的语句是B A. p=p->next; B. p->next=p->next->next; C. p->next=p; D. p=p->next->next;

《数据结构》期末考试题及答案

2011-2012学年第一学期期末考查 《数据结构》试卷 (答案一律写在答题纸上,在本试卷上做答无效) 一、选择(每题1分,共10分) 1.长度为n的线性表采用顺序存储结构,一个在其第i个位置插入新元素的算法时间复杂度为(D) A.O(0) B.O(1) C.O(n) D.O(n2) 2.六个元素按照6,5,4,3,2,1的顺序入栈,下列哪一个是合法的出栈序列?(D) A.543612 B.453126 C.346512 D.234156 3.设树的度为4,其中度为1、2、3、4的结点个数分别是4、2、1、2,则树中叶子个数为(B ) A.8 B.9 C.10 D.11 4.设森林F对应的二叉树B有m个结点,B的右子树结点个数为n,森林F中第一棵树的结点个数是( B ) A. m-n B.m-n-1 C.n+1 D.m+n 5.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是(B) A.9 B.11 C.15 D.不确定 6.下列哪一个方法可以判断出一个有向图是否有环。(A) A.深度优先遍历 B.拓扑排序 C.求最短路径 D.求关键路径 7.第7层有10个叶子结点的完全二叉树不可能有(B )个结点。 A.73 B.234 C.235 D.236 8.分别用以下序列构造二叉排序树,与用其他三个序列构造的结果不同的是(B) A.(100,80,90,60,120,110,130) B.(100, 120, 110,130,80, 60,90) C.(100,60,80,90,120,110,130) D.(100,80, 60,90, 120, 130,110) 9.对一组数据(84,47,25,15,21)排序,数据的排列次序在排序过程中变化如下:(1)84 47 25 15 21 (2)15 47 25 84 21 (3)15 21 25 84 47(4)15 21 25 47 84则采用的排序方法是(B ) A.选择排序 B.起泡排序 C.快速排序 D.插入排序 10.对线性表进行折半查找时,要求线性表必须(D) A.以顺序方式存储 B.以顺序方式存储,且数据元素有序

数据结构与算法分析-六套期末复习题(含答案)

数据结构与算法分析-六套期末复习题(含答案)

试题一 一、单项选择题(每小题2分,共20分) (1)以下数据结构中哪一个是线性结构?() A)有向图B)队列C)线索二叉树D)B树 (2)在一个单链表HL中,若要在当前由指针p指向的结点后面插入一个由q指向的结点,则执行如下()语句序列。 A)p=q; p->next=q; B)p->next=q; q->next=p; C)p->next=q->next; p=q; D)q->next=p->next; p->next=q; (3)()不是队列的基本运算。 A)在队列第i个元素之后插入一个元素 B)从队头删除一个元素 C)判断一个队列是否为空D)读取队头元素的值 (4)字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多可以组成()个不同的字符串。 A)14 B)5 C)6 D)8 (5)由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为()。 A)11 B)35 C)19 D)53 以下6-8题基于下图: (6)该二叉树结点的前序遍历的序列为()。 A)E、G、F、A、C、D、B B)E、A、G、C、F、B、D C)E、A、C、B、D、G、F D)E、G、A、C、D、F、B (7)该二叉树结点的中序遍历的序列为()。 A)A、B、C、D、E、G、F B)E、A、G、C、F、B、D C)E、A、C、B、D、G、F D)B、D、C、A、F、G、E

(8)该二叉树的按层遍历的序列为()。 A)E、G、F、A、C、D、B B)E、A、C、B、D、G、F C)E、A、G、C、F、B、D D)E、G、A、C、D、F、B (9)下面关于图的存储的叙述中正确的是()。 A)用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关B)用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关 C)用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关 D)用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 (10)设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述序列出发建堆的结果?() A)a,g,h,m,n,p,q,x,z B)a,g,m,h,q,n,p,x,z C)g,m,q,a,n,p,x,h,z D)h,g,m,p,a,n,q,x,z 二、(本题8分) 对于序列{8,18,6,16,29,28},试写出堆顶元素最小的初始堆。 三、(本题8分) 一棵二叉树的先序、中序和后序序列分别如下,其中有一部分未显示出来。试求出空格处的内容,并画出该二叉树。 先序序列: B F ICEH G 中序序列:D KFIA EJC 后序序列:K FBHJ G A 四、(每小题2分,共8分) 设有序列:w={23,24,27,80,28},试给出: (1)二叉排序树; (2)哈夫曼树; (3)平衡二叉树;

数据结构考试及答案()

数据结构考试及答案()

作者: 日期: 2

数据结构试题 一、单选题 1、在数据结构的讨论中把数据结构从逻辑上分为(C) A 内部结构与外部结构 B 静态结构与动态结构 C 线性结构与非线性结构 D 紧凑结构与非紧凑结构。 2、采用线性链表表示一个向量时,要求占用的存储空间地址(D) A 必须是连续的B部分地址必须是连续的 C 一定是不连续的D可连续可不连续 3、采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为 (D )。 An B n/2 C (n-1)/2 D (n+1)/2 4、在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行(D )o A s—link = p—link ;p—link = s; B p—link = s; s—link = q; C p—link = s—link ;s—link = p; D q—link = s; s—link = p; 5、如果想在4092个数据中只需要选择其中最小的5个,采用(C )方法最好。 A 起泡排序 B 堆排序C锦标赛排序 D 快速 排序 6、设有两个串t和p,求p在t中首次出现的位置的运算叫做(B )o A 求子串B模式匹配C 串替换 D 串连接 7、在数组A中,每一个数组元素A[i][j] 占用3个存储字,行下标i从1到8,

列下标j从1到10。所有数组元素相继存放于一个连续的存储空间中,则存放 该数组至少需要的存储字数是( C )。 A 80 B 100 C 240 D 270 8、将一个递归算法改为对应的非递归算法时,通常需要使用( A )。 A 栈B队列C循环队列D优先队列 9、一个队列的进队列顺序是1,2, 3, 4 ,则出队列顺序为(C )。 10、在循环队列中用数组A[0.. m-1]存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是( D )。 A ( front - rear + 1) % m B (rear - front + 1) %m C ( front - rear + m) % m D ( rear - front + n) % m 11、一个数组元素a[i]与(A )的表示等价。 A * (a+i) B a+i C *a+i D &a+i 12、若需要利用形参直接访问实参,则应把形参变量说明为( B )参数 A指针 B 引用C值 D 变量 13、下面程序段的时间复杂度为(C) for (i nt i=0;i

2017数据结构期末考试试题及答案

2017《数据结构》期末考试试题及答案 《数据结构》期末考试试题及答案 1 ................................................................. 2..试题 1 答案............................................................ 7..《数据结构》期末考试试题及答案 2 ................................................................. 9..试题 2 答案........................................................................ 1.. 4. 《数据结构》期末考试试题及答案 3 ............................................................... 1..6试题 3 答案........................................................................ 2.. 1.

数据结构》期末考试试题及答案 1 单选题(每题 2 分,共 20 分) 1. 栈和队列的共同特点是 ( )。 A. 只允许在端点处插入和删除元素 B. 都是先进后出 C. 都是先进先出 D. 没有共同点 2. 用链接方式存储的队列,在进行插入运算时 ( ). A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D .头、尾指针可能都要修改 3. 以下数据结构中哪一个是非线性结构? ( ) A. 队列 B. 栈 C. 线性表 D. 二叉树 4. 设有一个二维数组A[m][n],假设A[0][0]存放位置在644(io ), A[2][2]存放 若有18个元素的有序表存放在一维数组 A[19]中,第一个元素放A[1]中, 现进行二分查找,则查找 A [3]的比较序列的下标依次为( A. 1 , 2, 3 B. 9, 5, 2, 3 C. 9, 5, 3 D. 9, 4, 2, 3 8. 对n 个记录的文件进行快速排序,所需要的辅助存储空间大致为 A. O (1) B. O (n ) C. O ( 1 og 2n ) D. O (n2) 9. 对于线性表( 7, 34, 55, 25, 64, 46, 20, 10)进行散列存储时,若选 用 H (K )=K %9 作为散列函数,则散列地址为 1 的元素有( )个, 位置在 676(10),每个元素占一个空间, 表示用 10 进制表示。 问 A[3][3] (10)存放在什么位置?脚注 (10) 5. A .688 B .678 C . 692 D . 696 树最适合用来表示 ( )。 A.有序数据元素 B.无序数据元素 6. C.元素之间具有分支层次关系的数据 D .元素之间无联系的数据 二叉树的第 k 层的结点数最多为 ( ). A .2-1 B.2K+1 C.2K-1 D. 2k-1 7.

《数据结构》期末考试试卷

广东创新科技职业学院期末考试试题(标明A 卷、B 或C 卷) 2018 —2019 学年第二学期考试科目:《数据结构》 (闭(开)卷 90分钟) 院系____________ 班级____________ 学号___________ 姓名 __________ 一、选择题(每小题 2 分,共 40 分) 1.计算机识别、存储和加工处理的对象被统称为()。 A .数据 B .数据元素 C .数据结构 D .数据类型 2.数据结构指的是数据之间的相互关系,即数据的组织形式。数据结构一般包括()三方面内容。 A .数据的逻辑结构、数据的存储结构、数据的描述 B .数据的逻辑结构、数据的存储结构、数据的运算 C .数据的存储结构、数据的运算、数据的描述 D .数据的逻辑结构、数据的运算、数据的描述3.数据的逻辑结构包括()。 A .线性结构和非线性结构 B .线性结构和树型结构 C .非线性结构和集合结构

D .线性结构和图状结构 4.()的特征是:有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个直接前驱和一个直接后继。 A .线性结构 B .非线性结构 C .树型结构 D .图状结构 5. 评价一个算法时间性能的主要标准是()。 A .算法易于调试 B .算法易于理解 C .算法的稳定性和正确性 D .算法的时间复杂度 6. 下述程序段①中各语句执行频度的和是()。 s=0; ① for(i=1;i<=i;j++) s+=j; A .n-1 B .n C .2n-1 D .2n 7. 下面程序段的时间复杂度为()。 for(i=0;i

数据结构学生期末复习卷习题答案

一.是非题 (正确的打“√”,错误的打“×”。) 1. 数据结构可用三元式表示(D,S,P)。其中:D是数据对象,S是D上的关系集, P是对D的基本操作集。× 2. 线性表的链式存储结构具有可直接存取表中任一元素的优点。× 3. 字符串是数据对象特定的线性表。 4. 二叉树是一棵结点的度最大为二的树。× 5.邻接多重表可以用以表示无向图,也可用以表示有向图。× 6.可从任意有向图中得到关于所有顶点的拓扑次序。× 7.一棵无向连通图的生成树是其极大的连通子图。× 8.二叉排序树的查找长度至多为log2n。× 9.对于一棵m阶的B-树.树中每个结点至多有m 个关键字。除根之外的所有非终端结点至少有┌m/2┐个关键字。× 10.对于目前所知的排序方法,快速排序具有最好的平均性能。√ 11. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。× 12. 二维数组是其数据元素为线性表的线性表。√ 13. 连通图G的生成树是一个包含G的所有n个顶点和n-1条边的子图。× 14. 折半查找不适用于有序链表的查找。√ 15. 完全二叉树必定是平衡二叉树。√ 16. 中序线索二叉树的优点是便于在中序下查找直接前驱结点和直接后继结点。√ 17. 队列是与线性表完全不同的一种数据结构。× 18. 平均查找长度与记录的查找概率有关。√ 19. 二叉树中每个结点有两个子结点,而对一般的树,则无此限制,所以,二叉树是树的特殊情形。× 20. 算法的时间复杂性越好,可读性就越差;反之,算法的可读性越好,则时间复杂性就越差。× 二.选择题 1. 若对编号为1,2,3的列车车厢依次通过扳道栈进行调度,不能得到 (e ) 的序列。 a:1,2,3 b:1,3,2 c:2,1,3 d:2,3,1 e:3,1,2 f:3,2,1 2. 递归程序可借助于( b )转化为非递归程序。 a:线性表 b: 栈 c:队列 d:数组 3. 在下列数据结构中(c)具有先进先出(FIFO)特性,( b )具有先进后出(FILO)特性。 a:线性表 b:栈 c:队列 d:广义表 4. 对字符串s=’data-structure’ 执行操作replace(s,substring(s,6,8),’bas’) 的结果是 ( d ) 。 a: ‘database’ b: ‘data-base’ c: ‘bas’ d: ‘data-basucture’

2015年数据结构期末考试题及答案

2012年数据结构期末考试题及答案 一、选择题 1.在数据结构中,从逻辑上可以把数据结构分为C。 A.动态结构和静态结构B.紧凑结构和非紧凑结构 C.线性结构和非线性结构D.内部结构和外部结构 2.数据结构在计算机内存中的表示是指A。 A.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系 3.在数据结构中,与所使用的计算机无关的是数据的A结构。 A.逻辑B.存储C.逻辑和存储D.物理 4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储C。 A.数据的处理方法B.数据元素的类型 C.数据元素之间的关系D.数据的存储方法 5.在决定选取何种存储结构时,一般不考虑A。 A.各结点的值如何B.结点个数的多少 C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。 6.以下说法正确的是D。 A.数据项是数据的基本单位 B.数据元素是数据的最小单位 C.数据结构是带结构的数据项的集合 D.一些表面上很不相同的数据可以有相同的逻辑结构 7.算法分析的目的是C,算法分析的两个主要方面是A。 (1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系 C.分析算法的效率以求改进C.分析算法的易读性和文档性 (2)A.空间复杂度和时间复杂度B.正确性和简明性 C.可读性和文档性D.数据复杂性和程序复杂性 8.下面程序段的时间复杂度是O(n2)。

s =0; for(I =0;i<n;i++) for(j=0;j<n;j++) s +=B[i][j]; sum =s ; 9.下面程序段的时间复杂度是O(n*m)。 for(i =0;i<n;i++) for(j=0;j<m;j++) A[i][j] =0; 10.下面程序段的时间复杂度是O(log3n)。 i =0; while(i<=n) i =i * 3; 11.在以下的叙述中,正确的是B。 A.线性表的顺序存储结构优于链表存储结构 B.二维数组是其数据元素为线性表的线性表 C.栈的操作方式是先进先出 D.队列的操作方式是先进后出 12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着B 。 A.数据元素具有同一特点 B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等 13.链表不具备的特点是A。 A.可随机访问任一结点B.插入删除不需要移动元素 C.不必事先估计存储空间D.所需空间与其长度成正比 14.不带头结点的单链表head为空的判定条件是A。

数据结构期末考试试题及答案

贵州大学理学院数学系信息与计算科学专业 《数据结构》期末考试试题及答案 (2003-2004学年第2学期) 一、单项选择题 1.对于一个算法,当输入非法数据时,也要能作出相应的处理,这种要求称为()。 (A)、正确性(B). 可行性(C). 健壮性(D). 输入性 2.设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。 for(i=n-1;i>=0;i--) for(j=0;jnext; p->next= Q.rear->next; (D)、p=Q->next; Q->next=p->next; 9. Huffman树的带权路径长度WPL等于() (A)、除根结点之外的所有结点权值之和(B)、所有结点权值之和 (C)、各叶子结点的带权路径长度之和(D)、根结点的值 10.线索二叉链表是利用()域存储后继结点的地址。 (A)、lchild (B)、data (C)、rchild (D)、root 二、填空题

数据结构期末复习题答案

1.以下与数据的存储结构无关的术语是(c ) C、哈希表 2.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是(B ) B、108 3.假设带头结点的单向循环链表的头指针为head,则该链表为空的判定条件是(C) C、head–>next= =head 4.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不可能出现的出栈序列是( D ) D、2,3,5,1,6,4 5.下列关键字序列中,构成小根堆的是( A ) A、{12,21,49,33,81,56,69,41} 6.下列数据结构中,不属于二叉树的是( A ) A、B树 7.用顺序存储的方法来存储一棵二叉树,存放在一维数组A[1..N]中,若结点A[i]有右孩子,则其右孩子是( C )。 C、A[2i+1] 8.设树T的高度为4,其中度为1、2、3、4的结点个数分别为4、2、1、1,则T中叶子数为( D ) D、 8 9.有数据{53,30,37,12,45,24,96},从空二叉树开始逐个插入数据来形成二叉排序树,若希望高度最小,则应选择下 面哪个序列输入( B ) B、37,24,12,30,53,45,96 10.对下面有向图给出了四种可能的拓扑序列,其中错误的是( C ) C、5,1,6,3,4,2 11.m阶B-树中所有非终端(除根之外)结点中的关键字个数必须大于或等于( B ) B、[m/2]-1 12.散列文件也称为( C ) B 、索引文件 13.数据结构是(D ) D、相互之间存在一种或多种特定关系的数据元素的集合 14.从逻辑关系来看,数据元素的直接前驱为0个或1个的数据结构只能是(C ) C、线性结构和树型结构 15.设p为指向双向循环链表中某个结点的指针,p所指向的结点的两个链域分别用p→llink和p→rlink表示,则同样表示

数据结构考试题库

绪论 一、填空题 1.数据的逻辑结构被分为集合、(线性结构)、(树形结构)和(图状结构)四种。 2. 物理结构是数据结构在计算机中的表示,又称为(存储结构)。 3. 数据元素的逻辑结构包括(线性)、(树)和图状结构3 种类型,树形结构和图状结构合称为(非线性结构)。 4. (数据元素)是数据的基本单位,(数据项)是数据不可分割的最小单位。 5. 线性结构中元素之间存在(一个对一个)关系,树形结构中元素之间存在(一个对多个)关系,图状结构中元素之间存在(多个对多个)关系。 ? 6.数据结构是一门研究非数值计算的程序设计问题中:计算机的(数据元素)以及它们之间的(关 系)和(运筹)等的学科。 7. 算法的五个重要特性为有穷性、确定性、(输入)、(输出)和(可行性)。 二、选择题 1. 数据的不可分割的基本单位是(D)。 A.元素 B.结点C数据类型D.数据项 *2. 线性表的逻辑顺序与存储顺序总是一致的,这种说法(B)。 A.正确 B.不正确C不确定 D.无法选择 3. 线性结构是指数据元素之间存在一种(D)。 A.一对多关系 B.多对多关系C多对一关系D.—对一关系

4. 在数据结构中,从逻辑上可以把数据结构分成(A)。 A.动态结构和静态结构 B.紧凑结构和非紧凑结构 C线性结构和非线性结构D.内部结构和外部结构 5. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址(D)。 A.必须是连续的 B.部分地址必须是连续的 C. 一定是不连续的 D.连续不连续都可以 三、简答题 1. 算法的特性是什么。 答:有穷性确定性可行性有0 或多个输入有 1 或多个输出 线性结构 一、填空题 1?在一个长度为n的线性表中删除第i个元素(1< i产时,需向前移动(n-i)个元素。 2. 从循环队列中删除一个元素时,其操作是(先移动队首指针,后取出元素)。 3?在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为(p-> next)。 4. 在一个单链表中指针p所指向结点的后面插入一个指针q所指向的结点时,首先把(p->next)的值赋给q->next,然后(q->date)的值赋给p->next。 5. 从一个栈删除元素时,首先取出(栈顶元素),然后再使(栈顶指针)减1。 6. 子串的定位操作通常称做串的(模式匹配)。 7. 设目标T= ‘ abccdcdccba,模式P= ‘ cdc则第(六)次匹配成功。。 8. 顺序栈S 中,出栈操作时要执行的语句序列中有S->top(--);进栈操作时要执行的语句序列中有S->top(++)。

数据结构期末考试试题含答案

2005年-2006学年第二学期“数据结构”考试试题(A) 姓名学号(序号)_ 答案隐藏班号 要求:所有的题目的解答均写在答题纸上(每张答题纸上要写清楚姓名、班号和学号),需写清楚题目的序号。每张答题纸都要写上姓名和序号。 一、单项选择题(每小题2分,共20分) 1.数据的运算a 。 A.效率与采用何种存储结构有关 B.是根据存储结构来定义的 C.有算术运算和关系运算两大类 D.必须用程序设计语言来描述 答:A。 2. 链表不具备的特点是 a 。 A.可随机访问任一结点 B.插入删除不需要移动元素 C.不必事先估计存储空间 D.所需空间与其长度成正比 答:参见本节要点3。本题答案为:A。 3. 在顺序表中删除一个元素的时间复杂度为 c 。 A.O(1) B.O(log2n) C.O(n) D.O(n2) 答:C。 4.以下线性表的存储结构中具有随机存取功能的是 d 。 A. 不带头结点的单链表 B. 带头结点的单链表 C. 循环双链表 D. 顺序表 解 D。 5. 一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是 c 。

A.edcba B.decba C.dceab D.abcde 答:C。 6. 循环队列qu的队空条件是 d 。 A. (qu.rear+1)%MaxSize==(qu.front+1)%MaxSize B. (qu.rear+1)%MaxSize==qu.front+1 C.(qu.rear+1)%MaxSize==qu.front D.qu.rear==qu.front 答:D。 7. 两个串相等必有串长度相等且 b 。 A.串的各位置字符任意 B.串中各位置字符均对应相等 C.两个串含有相同的字符 D.两个所含字符任意 答:B。 8. 用直接插入排序对下面四个序列进行递增排序,元素比较次数最少的是c 。 A.94,32,40,90,80,46,21,69 B.32,40,21,46,69,94,90, 80 C.21,32,46,40,80,69,90,94 D.90,69,80,46,21,32,94, 40 答:C。 9. 以下序列不是堆(大根或小根)的是 d 。 A.{100,85,98,77,80,60,82,40,20,10,66} B.{100,98,85,82,80, 77,66,60,40,20,10} C.{10,20,40,60,66,77,80,82,85,98,100} D.{100,85,40,77,80, 60,66,98,82,10,20}

相关文档
最新文档