考研资料数据结构试题库

考研资料数据结构试题库
考研资料数据结构试题库

Test 1

一、单项选择题(每题2分,共30分)

1.若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用()存储方式最节省时间。

A) 单链表 B) 双链表 C) 单向循环链

表 D) 顺序表

2.串是任意有限个()。

A) 符号构成的序列 B) 符号构成的集合

C) 字符构成的序列 D) 字符构成的集合

3.设矩阵A的任一元素aij(1≤i,j≤10)满足:

aij≠0;(i≥j,1≤i,j≤10)

aij=0;(i

现将A的所有非0元素以行序为主序存放在首地址为2000的存储区域中,每个元素占有4个单元,则元素A[9,5]的首地址为()。

A) 2340 B) 2336 C)

2164 D) 2160

4.如果以链表作为栈的存储结果,则出栈操作时()。

A) 必须判别栈是否为满 B) 对栈不作任何判别

C) 必须判别栈是否为空 D) 判别栈元素的类型

5.设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为()。

A) front = front+1 B) front =

(front+1) % m

C) rear = (rear+1) % m D) front = (front+1) % (m+1)

6.深度为6(根的层次为1)的二叉树至多有()结点。

A) 64 B) 32 C)

31 D) 63

7.将含100个结点的完全二叉树从根这一层开始,每层上从左到右依次堆结点编号,根结点的编号为1。编号为49的结点X的双亲的编号为()。

A) 24 B) 25 C)

23 D) 无法确定

8.设有一个无向图和,如果为的生成树,则下面不正确的说法是()。

A) 为的子图 B) 为的连通分量

C) 为的极小连通子图且 D) 为的一个无环子图

9.用线性探测法查找闭散列表,可能要探测多个散列地址,这些位置上的键值()。

A) 一定都是同义词B) 一定都不是同义词C) 多相同D) 不一定都是同义词

10.二分查找要求被查找的表是()。

A) 键值有序的链接表 B) 链接表但键值不一定有序

C) 键值有序的顺序表 D) 顺序表但键值不一定

有序

11.当初始序列已经按键值有序,用直接插入算法对其进行排序,需要循环的次数为()。

A) B) C)

D) n-1

12.堆是一个键值序列 ,对,满足()。

A) B)

C) 且 ( ) D) 或 ( )

13.使用双向链表存储数据,其优点是可以()。

A) 提高检索速度 B) 很方便地插入和删除数据

C) 节约存储空间 D) 很快回收存储空间

14.设计一个判别表达式中左右括号是否配对出现地算法,采用()数据结构最佳。

A) 线性表地顺序存储结构 B) 栈

C) 队列 D) 线性表达的链式存储结构

15.设深度为k的二叉树上只有度为0和2的结点,则此类二叉树中所含的结点数至少为()。

A) k + 1 B) 2k C) 2k -

1 D) 2k + 1

二、填空题(每空2分,共28分)

1.设r指向单链表的最后一个结点,要在最后一个结点之后插入s所指的结点,需执行的三条语句是_____________________________________________r=s;r->next=NULL。

2.在单链表中,指针p所指结点为最后一个结点的条件是___________________。

3.设一个链栈的栈顶指针是ls,栈中结点格式为,栈空的条件为_____________。如果栈不为空,则出栈操作为p=ls;______________;free(p)。

4.已知一棵度为3的树有2个度为1的结点,3个度为2的结点,4个度为3的结点,则该树有________个叶子结点。

5.树有三种常用的存储结构,即孩子链表法,孩子兄弟链表法和____________。

6.n个顶点的连通图的生成树有__________条边。

7.一个有向图G中若有弧、和,则在图G的拓扑序列中,顶点的相对位置为

___________。

8.设表中元素的初始状态是按键值递增的,分别用堆排序、快速排序、冒泡排序和归并排序方法对其进行排序(按递增顺序),________最省时间,__________最费时间。

9.下面是将键值为x的结点插入到二叉排序树中的算法,请在划线处填上适当的内容。Typedef struct pnode

{ int key;

struct node * left, * right;

}

Void searchinsert (int x; pnode t )

/* t为二叉排序树根结点的指针*/

{ if (_____________)

{p = malloc (size);

p->key=x;p->left=NULL;

p->right=NULL;

t=p;

}

else

if (xkey) searchinsert (x,t->left)

else _________________

}

10.线性表的____________的主要优点是从表中任意结点出发都能访问到所有结点。而使用____________,可根据需要在前后两个方向上方便地进行查找。

三、应用题(每题10分,共30分)

1.在双链表中,要在指针变量P所指结点之后插入一个新结点,请按顺序写出必要的算法步骤。(设:P所指结点不是链表的首尾结点,q是与p同类型的指针变量)

2.已知待排序文件各记录的排序码顺序如下:

72 73 71 23 94 16 05 68

请列出快速排序过程中每一趟的排序结果。

四、算法题(共12分)

编写算法,实现单链表上的逆置运算(说明:即将单链表中的元素次序反转)

《数据结构》2004学年面授试卷答案

一、单项选择题(每题2分,共30分)

1.D

2.C

3.D

4.C

5.D

6.D

7.A

8.B

9.D 10.C 11.D 12.C 13.A 14.B 15.C

二、填空题(每空2分,共28分)

1. r->next=s;

2.

p->next=NULL;

3. ls = = NULL; ls=ls->link。

4. 12

5. 双亲表示法

6. n-1

7. i,j,k 8. 冒泡排序,快速排序

9. t= =NULL,searchinsert(x,t->right);10.循环链表,双向链表

三、应用题(每题10分,共30分)

1.new(q);

q↑.llink ← p;

q↑.rlink ← p↑.rlink;

p↑.rlink↑.llink ← q;

p↑.rlink ← q。

评分细则:按顺序每对一个给2分,全对计10分。

2.各趟结果如下:

[68 05 71 23 16] 72 [94 73]

[16 05 23] 68 [71] 72 [94 73]

[05] 16 [23] 68 [71] 72 [94 73]

05 16 [23] 68 [71] 72 [94 73]

05 16 23 68 71 72 [94 73]

05 16 23 68 71 72 [73] 94

05 16 23 68 71 72 73 94

四.算法题(共12分)

void invert( pointer head)

{p=NULL;

while ( head<>NULL)

{u=head;

head=head->next;

u->next=p;

p=u;

}

head=p;

}

六、编写算法(10分)。

写出向二叉排序树中插入一个元素的非递归算法。

Void insert(BtreeNode * BST, const ElemType & item)

{ BtreeNode *t=BST, *parent=NULL;

While(t!=NULL){

Parent=t;

If(itemdata) t=t->left;

Else t=t->right;

}

BtreeNode *p=newBtreeNode;

p->data=item;

p->left=p->right=NULL;

if(parent= =NULL) BST=p;

else if(itemdata) parent->left=p;

else parent->right=p;

}

阅读算法,回答问题(每小题8分,共16分)

1.Void MADE(Lnode * & H1)

2.Void AE(Stack& S)

{ {

Lnode *p; InitStack(S);

p=H1; Push(S,30);

H1=NULL; Push(S,40);

while(p!=NULL) Push(S,50);

{ int x=Pop(S)+2*Pop(S);

lnode *q=p; Push(S,x);

p=p->next; int i,a[4]={5,8,12,15};

q->next=h1; for(i=0;i<4;i++)

H1=q; Push(S,a[i]);

} while(!StackEmpty(S))

} cout<

该算法的功能为:该算法被调用后得到的输出结果为:将原链表逆序 15 12 8 5 130 30

Test 2

北京邮电大学数据结构期末考试试题(A卷)

一.单项选择题(2分/题)

1.一个栈的输入序列为12345,则下列序列中是栈的输出序列的是(A)。

A.23415

B.54132

C.31245

D.14253

2.设循环队列中数组的下标范围是1~n,其头尾指针分别为f和r,则其元素个数为(D)。

A.r-f

B.r-f+1

C.(r-

f) mod n +1 D.(r-f+n) mod n

3.二叉树在线索化后,仍不能有效求解的问题是(D)。

A.先序线索二叉树中求先序后继

B. 中序线索二叉树中求中序后

继 C.中序线索二叉树中求中序前驱 D. 后序线索二叉树中求后序后继

4.求最短路径的FLOYD算法的时间复杂度为(D)。

A.O(n)

B.O(n+e)

C.O(n2)

D. O(n3)

5.一棵左右子树不空的二叉树在先序线索化后,其空指针域数为(B)。

A.0

B.1

C.2

D.不确定

6.数组A[1..5,1..6]的每个元素占5个单元,将其按行优先顺序存储在起始地址为1000的连续的内存单元中,则元素A[5,5]的地址为(A)。

A.1140

B.1145

C.1120

D.1125

7.在下列排序算法中,在待排序的数据表已经为有序时,花费时间反而最多的是(A)。

A.快速排序

B.希尔排序

C.冒泡排

序 D.堆排序

8.对有18个元素的有序表做折半查找,则查找A[3]的比较序列的下标依次为(C)。

A.1-2-3

B.9-5-2-3

C.9-5-3

D. 9-4-2-

3

9.下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是(D)。

A.堆排序

B.冒泡排序

C.快速排序

D.直接插入排序

10.在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡点为A,并已知A的左孩子的平衡因子为-1,右孩子的平衡因子为0,则做(B)型调整以使其平

衡。

A.LL

B.LR

C.RL

D.RR

二.判断题(1分/题)

1.线性表的长度是线性表所占用的存储空间的大小。 F

2.双循环链表中,任意一结点的后继指针均指向其逻辑后继。F

3.在对链队列做出队操作时,不会改变front指针的值。F

4.如果两个串含有相同的字符,则说它们相等。F

5.如果二叉树中某结点的度为1,则说该结点只有一棵子树。T

6.已知一棵树的先序序列和后序序列,一定能构造出该树。F

7.图G的一棵最小代价生成树的代价未必小于G的其它任何一棵生成树的代价。T

8.图G的拓扑序列唯一,则其弧数必为n-1(其中n为顶点数)。F

9.对一个堆按层次遍历,不一定能得到一个有序序列。T

10.直接选择排序算法满足:其时间复杂度不受数据的初始特性影响,为O(n2)。T

三.填空题(2分/空)

1.已知完全二叉树的第8层有8个结点,则其叶子结点数是(68)。68+8-4

2.将下三角矩阵A[1..8,1..8]的下三角部分逐行地存储到起始地址为1000的内存单元

中,已知每个元素占4个单元,则A[7,5]的地址是(1100)。

3.有n个顶点的强连通有向图G至少有(n)条弧。

4.有n个结点并且其高度为n的二叉树的数目是(2^(n-1))。

5.高度为8的平衡二叉树的结点数至少是(54)。

6.3个结点可构成(5)棵不同形态的树。

7、给出冒泡排序和快速排序的最好情况、平均情况和最坏情况下的时间复杂度。

四、设计一个算法,判断一个算术表达式中的括号是否配对。算术表达式保存在带表头结点

的单循环链表中,每个结点有两个域:ch和link,其中ch域为字符类型。

南开大学98考研题

一、(8分)给出数组A∶ARRAY[3..8,2..6] of INTEGER;当它内存中按行存放和按列存放时,分写出数组元素A[i,j]地址计算公式(设每个元素站两个存储单元)。

二、(12分)于对于有向无环图

叙述求拓扑有序序列的步骤;

对于以下的图,写出它的四个不同的拓扑有序序列

三、(12分)已知一棵二叉树按中序遍历时个结点被访问的次序和这棵二叉树按后序遍历时

各结点被访问的次序,是否唯一确定这棵二叉树的结构?为什么?若已知一棵叉树按先序遍

历时各结点被访问的次序和这棵按后序遍历时各结点访问的次序,能否唯一确定这棵二叉树

的结构?为什么?

七、写出在二叉排序树中删除一个结点的数法,使删除后仍为二叉排序树。设删除结点由指针

P所指,其双亲结点由指针f所指,并假设被删除结点是其双亲结点的右孩子。用类PASCAL (或C)语言将上述算法写为过程形式。(南开考研题)

八、给出一组关键字:29,18,25,47,58,12,51,10,分别写出下列各种排序方法进行排序

时的变化过程:(南开考研题)

1.归并排序每归并一次书写一个次序。

2.快速排序每规划一次书写一个次序。

3.堆排序先建成一个堆,然后每从堆顶取下一个元素后,将堆调整一次

Test 3

一、选择题(单项选择,每小题2分,共计20分)

1、在数据结构中,与所使用的计算机无关的是。

A.存储结构

B.物理结构

C.物理和存储结构

D.逻辑结构

2、线性表采用链式存储结构时,其地址是。

A.必须是连续的

B.一定是不连续的

C.部分地址必须是连续的

D.连续与否均可以

3、在下列链表中不能从当前结点出发访问到其余各结点的是。

A.单链表

B.单循环链表

C.双向链表

D.双向循环链表

4、设一个栈的进栈序列是 a,b,c,d,进栈的过程中可以出栈,不可能的出栈序列是。

A.d,c,b,a

B.c,d,b,a

C.d,c,a,b

D.a,b,c,d

5、设循环队列中数组的下标是0~N-1,其头尾指针分别为f 和r ,则其元素个数为。

A. r–f

B.r-f-1

C.(r-f)%N+1

D.(r-f+N)%N

6、串是。

A.不少于一个字母的序列

B.任意个字母的序列

C.不少于一个字符的序列

D.有限个字符的序列

7、对稀疏矩阵采用压缩存储,其缺点之一是。

A.无法判断矩阵有多少行和多少列

B.无法根据行列号查找某个矩阵元素

C.无法根据行列号计算矩阵元素的存储地址

D.使矩阵元素之间的逻辑关系更加复杂

8、以下说法错误的是。

A.一般在哈夫曼树中,权值越大的叶子离根结点越近

B.哈夫曼树中没有度数为 1 的分支结点

C.若初始森林中共有 n 棵二叉树,最终求得的哈夫曼树中共有 2n-1个结点

D.若初始森林中共有 n 棵二叉树,进行 2n-1 次合并后才能剩下最终的哈夫曼树

9、任何一个无向连通图最小生成树。

A.只有一棵

B.有一棵或多棵

C.一定有多棵

D.可能不存在

10、只有在顺序存储结构上才能实现的查找方法是法。

A.顺序查找

B.二分查找

C.树型查找

D.哈希查找

二、填空题(每题1分,共计10分)

1、在一个长度为n 的顺序表中向第i个元素(1≤i ≤n) 之前插入一个新元素时,需要向

后移动

个元素。

2、只允许在表的一端进行插入,而在另一端进行删除元素操作的线性表称为。

3、若串S = ’software’( 串长度为8),其子串数目是个。

4、一个n×n 的对称矩阵,如果以行或列为主序放入内存,则容量为。

5、对于广义表((a,b),(()),(a,(b)))来说,其有个元素。

6、某棵树的的结点A有3兄弟,而且结点B是A的双亲,则结点B的度是。

7、n个结点的二叉树,最大高度是。

8、克鲁斯卡尔(Kruskal)算法适用于求的网的最小生成树。

9、在各种查找方法中,其平均查找长度与结点个数n无关的查找方法是。

10、对关键字序列{13,11,54,26,14,36,77},用筛选法建堆,必须从键值为的开始。

三、应用题(每题10分,共计40分)

1、已知某二叉树中序遍历的结果是ABC,试画出其可能的二叉树五种形态。(10分)

2、已知某带权无向图如下图所示。

图1.带权无向图G

(1)请用邻接矩阵法表示该图。(4分)

(2)从顶点0出发,采用Prim算法画示最小生成树的过程。(6分)

3、设散列表为 T[0..12],散列函数为 H(key)= key%13,给定键值序列是{39,36,28,

38,44,15,42,12,06,25}。

(1)请画出用拉链法处理冲突时所构造的散列表。(6分)

(2)求出在等概率情况下,查找成功时的平均查找长度。(4分)

4、已知排序码值序列{17,18,60,40,7,32,73,65,85},排序后成后非递减序列,

请写出冒泡排序每一趟的排序结果。(10分)

四、算法阅读题(每题10分,共计20分)。

1、已知二叉树的结点数据类型如下:

typedef struct node

{

ElemType data; //数据元素

struct node *lchild; //指向左孩子

struct node *rchild; //指向右孩子

}BTNode;

阅读下列二叉树算法,回答问题。

int fun1(BTNode *b)

{

int lchilddep,rchilddep;

if(b==NULL)

return 0;

else

{

lchilddep=fun1(b->lchild);

rchilddep=fun1(b->rchild);

return (lchilddep>rchilddep)?(lchilddep+1):(rchilddep+1);

}

}

(1)该算法执行二叉树运算的什么功能?(5分)

(2)若存在二叉树如图2所示,试问执行上述算法后,其执行结果是多少?(5分)

图2.二叉树

2、已知线性表R数据类型如下:

# define max 100

Typedef struct

{int key

infotypeinfo;}Sqnode;

Sqnode R[max];

阅读下面算法,回答问题。

int fun2 (sqnode R[],int n,int k)

{int i= 0;

R[n].key= k;

五、算法设计题(在下列算法的横线内填上适当的语句或表达式。每空2分,共10分)

已知单链表的结点数据类型如下:

typedef struct Lnode

{ ElemType data;

Struct Lnode *next;

}LinkList;

假设ha=(a1,a2,……,an)和hb=(b1,b2,……,bn))是两个带头结点的循环单链表,编写将这两个表合并为带头结点的循环单链表hc的算法。

void Merge(LinkList *ha,LinkList *hb,LinkList *&hc)

{

Linklist *p = ha->next;

hc = ha;

while ( p -> next!= ha ) //找到ha的最后一个结点*p

p = (1) ;

(2) = hb->next;//将ha的最后一个结点的next指向hb的第一个数据结点

while (p->next != (3) ) //找到hb的最后一个结点*p

(4) ;

p->next = (5) ; //构成循环单链表

}

答案如下

一、选择题(每小题2分,共计20分)

DDACD DCDBB

二、填空题(每小题1 分,共计10分)

1、n-i+1

2、队列

3、36

4、(n+1)×n/2

5、3

6、4

7、n

8、边稀疏

9、哈希(散列)查找10、54

三、应用题(每小题10分,共计40分)

1、二叉树图形如下图1:(10分)

图1 二叉树的不同形态

评分标准:每正确画出一棵二叉树,得分2分。

2、(1)其邻接矩阵如下:(4分)

(2) 采用Prim算法画示最小生成树的过程如下:(6分,每幅图1分)

图2. Prim算法求最小生成树

3、答:(1)用拉链法处理冲突构造的散列表如下图所示:(6分)

图3.拉链法解决冲突

(2)在等概率的情况下,查找成功的平均查找长度:

ASLs= (1×7+2×2+3×1)/10=1.4 (4分)

4、

冒泡排序(10分,每趟排序正确得2分)(此答案不唯一)

第一趟:17, 18, 40, 7, 32, 60, 65, 73, 85

第二趟:17, 18, 7, 32, 40, 60, 65, 73

第三趟:17, 7, 18, 32, 40, 60, 65

第四趟:7, 17, 18, 32, 40, 60

第五趟:7, 17, 18, 32, 4O(没有发生交换,结束排序)

四、算法阅读题(每小题10分,共计20分)

1、(1)计算二叉树深度。

(2)该二叉树叶子深度是4。

2、(1)其目的是在while循环中省去检测整个表是否查完,R[n]起到了监视哨的作用。

(2)顺序查找算法,查找成功时函数返回值为该结点的位置,否则函数返回值为 -1。

五、算法设计题(每空2分,共计10分)

(1) p-> next(2) p->next(3) hb(4) p = p->next(5) hc

重庆工商大学试卷

考试科目:数据结构

试卷适用专业(班):2004考核方式:开卷()闭卷(√)

2005-2006 学年度 2 学期

一.选择题(单项选择,每小题2分,共计20分)

1、已知某数据的逻辑结构 S = (D,R),其中D = {a,b,c,d,e,f},R = {〈a,b〉,〈b,c〉,〈c,d〉,〈d,e〉,〈e,f〉},请指出它们属于下面的哪种结构:A.集合 B. 线性结构 C.树形结构 D.图形结构

2、若线性表最常用的运算是存取第i 个元素及其前趋的值,则采用存储方式节省时间。

A.单链表

B.双链表

C.单循环链表

D.顺序表

3、单链表中,若*p结点不是末尾结点,在其后插入*s的操作是。

A.s->next = 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;

4、经过以下栈运算后,x的值是。

InitStack(s); Push(s, a); Push(s, b); Pop(s, x) ; GetTop(s, x);

A.a

B. b

C.1

D.0

5、最适合用作链式队列的链表是。

A.带队首指针和队尾指针的循环单链表

B.带队首指针和队尾指针的非循环单链表

C.只带队首指针的非循环单链表

D.只带队首指针的循环单链表

6、串是一种特殊的线性表,其特殊性体现在。

A.可以顺序存储

B.数据元素是一个字符

C.可以链接存储

D.数据元素可以是多个字符

7、对称矩阵压缩存储是为了。

A.方便运算

B.节省空间

C. 提高运算速度

D.以上都不是

8、高度为h的二叉树上至多有__ ___个结点(h≥1)。

A. 2h-1

B. 2h-1

C.2h+1

D.2h

9、关键路径是事件结点网络中。

A.从源点到汇点的最长路径

B.从源点到汇点的最短路径

C.最长的回路

D.最短的回路

10、在采用线性探测法处理冲突所构成的闭散列表上进行查找,可能要探测多个位置,在查找成功的情况下,所探测的这些位置上的键值。

A.一定都是同义词

B.一定都不是同义词

C.都相同

D.不一定都是同义词

二、填空题(每题1分,共计10分)

1、具有n 个结点的单链表,在已知的结点*p后插入一个新结点的时间复杂度是。

2、若用一个大小为 6的数组来实现循环队列,且当前 front和rear的值分别为 3和 0,当从队列中删除一个元素,再加入两个元素后,front和 rear的值分别为。

3、设有两个串 p和q,其中q是p的子串,把q在p中首次出现的位置作为子串q在p 中的位置的算法称为。

4、数组A[0..5,0..6](即数组A[6][7])的每个元素占5个单元,将其按列优先次序存储在起始地址为1000的连续内存单元中,则元素a[5][5]的地址为。

5、已知广义表A=(a,b,(c,d),(e,(f,g))),则式子tail[head[tail[tail(A)]]]的值为。

6、对任何二叉树,若度为 2 的结点数为 n2,则叶子数 n0= 。

7、若以{4,5,6,7,8}作为叶子结点的权值构造哈夫曼树,则其带权路径长度是。

8、普里姆(Prim)算法适用于求的网的最小生成树。

9、有一个有序表R[1…13]={1,3,9,12,32,41,45,62,75,77,82,95,100},当用二分查找法查找值为82的结点时,经次比较查找成功。

10、在各种查找方法中,其平均查找长度与结点个数无关的查找方法是。

三、应用题(每题10分,共计40分)

1、已知一棵二叉树的顺序存储结构如图1所示。(小计10分)

(1)画出此棵二叉树。(4分)

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

图1.某二叉树的顺序存储结构

(2)写出该二叉树的先根遍历和后根遍历的序列。(6分)

2、设无向图有6个结点,依次输入的9条边为(1,2),(1,3),(1,5),(1,6),(2,3),(3,4),(3,5),(4,5),(5,6)。

1)画出无向图G。(4分)

2)画出G的邻接表(6分)

3、将整数序列{4,5,7,2,1,3,6}中的数依次插入一棵空的二叉排序树中。(10分) (1)画出相应的二叉排序树。(6分)

(2)求等概率情况下查找成功的平均查找长度。(4分)

4、以关键字序列{10,2,13,15,12,14}为例,用堆排序方法进行排序。写出每趟排序结束时,关键字序列的状态。(请按小根堆进行排序)(小计10分)

四、算法阅读题(每题10分,共计20分)。

1、已知二叉树的结点数据类型如下:

typedef struct node

{

ElemType data; //数据元素

struct node *lchild; //指向左孩子

struct node *rchild; //指向右孩子

}BTNode;

阅读下列二叉树算法,回答问题。

int fun1(BTNode *b)

{ int num1,num2;

if(b==NULL)

return 0;

else if (b->lchild==NULL && b->rchild == NULL)

return 1;

else

{ num1=fun1(b->lchild);

num2=fun1(b->rchild);

return (num1+num2); }

}

(1)该算法执行二叉树运算的什么功能?(6分)

(2)若存在二叉树如图2所示二叉树,试问执行上述算法后,其执行结果是多少?(4分)

图2.二叉树

2、已知L是一个递增有序表,x的数据类型与L中元素类型一致。执行以下算法,问:

void fun2 (SeqList &L, DataType x)

{ int i=0,j;

while ( i < L.length && L.data[i] < x)

i++;

for (j=L.length; j>=i; j- -)

L.data[j+1]=L.data[j];

L.data[i] = x;

L.length + +; }

(1)该算法执行什么功能?(6分)

(2)假设初始有序表L={1,3,5,8,9},x=7。执行上述算法后,该有序表发生什么变化?(4分)

五、算法设计题(在下列算法的横线内填上适当的语句或表达式。每空2分,共10分)

已知单链表的结点数据类型如下:

typedef struct Lnode

{ ElemType data;

Struct Lnode *next;}LinkList;

设计一个算法,将一个带头结点的数据域依次为a1,a2,……,an(n≥3)的单链表的的所有结点逆置 (即第一个结点的数据域变为an,最后一个结点的数据域变为a1) ,生成一个新的单链表。

void Reverse ( LinkList *& head )

{ LinkList *p = head -> next;

head -> next = (1) ; //采用前插法生成新的单链表

while (p != (2 ) ) //扫描所有结点

{ q = p ->next ; //q指向*p结点的下一个结点p-> next = (3) ;//总是将*p作为第一个数据结点

head -> next =(4) ;

(5) ;}

}

答案:

一、选择题(每小题2分,共计20分)

BDBAB BBAAD

二、填空题(每小题1 分,共计10分)

1、O(1)

2、4和2

3、模式匹配

4、1175

5、(d)

6、n2+1

7、69

8、边稠密

9、410、哈希(散列)查找

三、应用题(每小题10分,共计40分)

1、(1)二叉树图形如下图1:

图1 二叉树

画正确11个结点,得分………………………………………4分。

画正确7-10个结点,得分…………………………………….3分。

画正确4-6个结点,得分………………………………………2分

画正确2-3个结点,得分………………………………………1分

(2)先根遍历序列是:ABCDEFGHIJK3分

后根遍历序列是:DECBHIGKJFA3分

2、1)(4分)

图2.无向图

2)6(分)

图3.邻接矩阵

3、(1)生成的二叉排序树如下图所示:(6分)

图4. 二叉排序树

评分标准:从插入的第二个结点开始计分,每正确插入一个结点,得1分。

(2)查找成功的平均查找长度是:

ASL=(1×1+2×2+3×3+4×1)/7=18/7=2.57

4、(10分)

初始状态:10,2,13,15,12,14

第1趟:( 2,10,13,15,12,14) 2分

第2趟:2,(10,12,13,15,14)2分

第3 趟:2,10 ,(12,14,13,15)2分

第4趟:2,10,12,(13,14,15)2分

第5趟:2,10,12,13,( 14,15)2分

第6趟:2,10,12,13,14,15

四、算法阅读题(每小题10分,共计20分)

1、(1)计算二叉树叶子结点个数。(6分)

(2)该二叉树叶子结点个数是4。(4分)

2、(1)在该有序表中新增一个元素x,并保持该有序表的有序性。(6分)

(2)L={1,,3,5,7,8,9}。(4分)

五、算法设计题(每空2分,共计10分)

(1)NULL(2)NULL(3) head->next(4) p(5) p=q

山东:07年专升本考试数据结构模拟试题1

一、填空题:(每小题2分,共10分)

1. 设有数据结构(D,R),其中 D 是数据元素的有限集,R 是的有限集。

2. 深度为 k 的二叉树其结点数至多有个。

3. 栈是一种特殊的线性表,它允许在表的一端进

行操作。

4. 通常象交通、道路问题的数学模型是一种称为的数据结构。

5. 哈希表是一种查找表,可以根据哈希函数直接获

得。

二、单项选择题:(每小题2分,共10分)

对于下列各题,在备选答案中选出一个正确的,并将其编号填在“”位置上。

1. 若线性表最常用的操作是存取第 i 个元素及其前驱元素的值,则采用存储方式最节省运算时间。

A. 单链表

B. 双链表

C. 单循环链表

D. 顺序表

2. 下列排序算法中,算法在进行一趟相应的排序处理结束后不一定能选出一个元素放到其最终位置上。。

A. 直选择排序

B. 冒泡排序

C. 归并排序

D. 堆排序

3. 队列的操作原则是。

A. 先进后出

B. 先进先出

C. 只能进行插入

D. 只能进行删除

4. 在具有 n 个结点的二叉链表中,非空的链域个数为。

A. n-1

B. n

C. n+1

D. 不确定

5. 对具有 n 个元素的有序查找表采用折半查找算法查找一个键值,其最坏比较次数的数量级为。

A. O(log2n)

B. O(n)

C. O(nlog2n)

D. O(n2)

三、判断题:(每小题2分,共10分)

判断下列各题是否正确,若正确,在题后的括号内填“T”,否则填“F”。

1. 在栈为空的情况下不能作出栈处理,否则,将产生下溢出。()

2. 如果有向图 G=(V, E) 的拓扑序列唯一,则图中必定仅有一个顶点的入度为0、一个顶点的出度为0。()

3. 在大根堆中,必定满足每个结点的键值大于其左右子树中所有结点的键值。()

4. 在采用线性探测法处理冲突的散列表中所有同义词在表中相邻。()

5. 在索引顺序表中,对索引表既可采用顺序查找,也可采用二分查找。()

四、解答下列各题:(每题10分,共40分)

1. 已知线性表 L 采用带头结点的的单向循环链表表示,试给出它的存储结构类型描述及相应的示意图。。

2. 已知一棵二叉树的先序、中序和后序序列如下所示,请填写各序列中空格处的结点,并画出该二叉树的二叉链表存储结构示意图。

先序序列是:_ B _ F _ I C E H _ G;中序序列是:D _ K F I A _ E J C _ ;

后序序列是:_ K _ F B H J _ G _ A

3. 已知数据表为(48,70,33,65,24,56,12,92,86,22),a) 写出采用快速排序算法进行排序时第一趟快速划分的详细过程及结果;b) 写出按基数排序思想对最低位进行一次分配和收集的结果。

4. 对图1所示的带权无向图,写出它的邻接矩阵和深度优先搜索序列,并按克鲁斯卡算法求其最小生成树(写出求解的详细过程示意图)。

图1 带权无向图

五、算法设计题:(前两题必做,每题15分,共30分;第三题为附加题,选做,10分)

1. 已知队列 Q 以循环队列存储。写出 Q 的存储结构类型描述,并试编写算法实现将元素x 插入队列 Q 的入队操作 EnQueue(Q,x)和从队列 Q 中获取队首元素的函数 GetTop(Q)。

2. 假设线性表L=(a1,a2,……,an) 用带头结点的单链表存储表示,试编写算法对其实现就地逆置,即利用原链表中每一个结点存储空间,使得元素的逻辑次序改变为(an,……, a2,a1)。

3. 设非空二叉树 T 采用中序线索二叉链表表示,写出 T 的存储结构类型描述。试编写算法 InOrderTraverse(T) 实现对二叉树 T 的中序遍历。

专升本-山东模拟2

一、填空题:(每小题2分,共10分)

1. 设有数据结构(D,R),其中D 是数据元素的有限集,R 是的有限集。

2. 深度为k 的二叉树其结点数至多有个。

3. 栈是一种特殊的线性表,它允许在表的一端进行操作。

4. 通常象交通、道路问题的数学模型是一种称为的数据结构。

5. 哈希表是一种查找表,可以根据哈希函数直接获得。

二、单项选择题:(每小题2分,共10分)

对于下列各题,在备选答案中选出一个正确的,并将其编号填在“”位置上。

1.若线性表最常用的操作是存取第i 个元素及其前驱元素的值,则采用存储方式最节省运算时间。

A. 单链表

B. 双链表

C. 单循环链表

D. 顺序表

2.下列排序算法中,算法在进行一趟相应的排序处理结束后不一定能选出一个元素放到其最终位置上。。

A. 直选择排序

B. 冒泡排序

C. 归并排序

D. 堆排序

3.队列的操作原则是。

A. 先进后出

B. 先进先出

C. 只能进行插入

D. 只能进行删除

4.在具有n 个结点的二叉链表中,非空的链域个数为。

A. n-1

B. n

C. n+1

D. 不确定

5.对具有n 个元素的有序查找表采用折半查找算法查找一个键值,其最坏比较次数的数量级为。

A. O(log2n)

B. O(n)

C. O(nlog2n)

D. O(n2)

三、判断题:(每小题2分,共10分)

判断下列各题是否正确,若正确,在题后的括号内填“T”,否则填“F”。

1. 在栈为空的情况下不能作出栈处理,否则,将产生下溢出。()

2. 如果有向图G=(V, E) 的拓扑序列唯一,则图中必定仅有一个顶点的入度为0、一个顶点的出度为0。()

3. 在大根堆中,必定满足每个结点的键值大于其左右子树中所有结点的键值。()

4. 在采用线性探测法处理冲突的散列表中所有同义词在表中相邻。()

5. 在索引顺序表中,对索引表既可采用顺序查找,也可采用二分查找。()

四、解答下列各题:(每题10分,共40分)

1. 已知线性表L 采用带头结点的的单向循环链表表示,试给出它的存储结构类型描述及相应的示意图。。

2. 已知一棵二叉树的先序、中序和后序序列如下所示,请填写各序列中空格处的结点,并画出该二叉树的二叉链表存储结构示意图。

先序序列是:_ B _ F _ I C E H _ G;中序序列是:D _ K F I A _ E J C _ ;

后序序列是:_ K _ F B H J _ G _ A

3. 已知数据表为(48,70,33,65,24,56,12,92,86,22),a) 写出采用快速排序算法进行排序时第一趟快速划分的详细过程及结果;b)

写出按基数排序思想对最低位进行一次分配和收集的结果。

4. 对图1所示的带权无向图,写出它的邻接矩阵和深度优先搜索序列,并按克鲁斯卡算法求其最小生成树(写出求解的详细过程示意图)。

图1带权无向图

五、算法设计题:(前两题必做,每题15分,共30分;第三题为附加题,选做,10分)

1. 已知队列Q 以循环队列存储。写出Q 的存储结构类型描述,并试编写算法实现将元素x 插入队列Q 的入队操作EnQueue(Q,x)和从队列Q

中获取队首元素的函数GetTop(Q)。

2. 假设线性表L=(a1,a2,……,an)

用带头结点的单链表存储表示,试编写算法对其实现就地逆置,即利用原链表中每一个结点存储空间,使得元素的逻辑次序改变为(an,……, a2,a1)。

3. 设非空二叉树T 采用中序线索二叉链表表示,写出T 的存储结构类型描述。试编写算法InOrderTraverse(T) 实现对二叉树T

的中序遍历。文章录入:fly800责任编辑:fly800 上一篇文章:山东:2007年专升本生物化学模拟试题

一、单项选择题:(每小题2分,共10分)

2019年考研《计算机数据结构》考试试题

2019年考研《计算机数据结构》考试试题 一、选择题(24分) 1.下列程序段的时间复杂度为( )。 i=0,s=0; while (s (A) O(n1/2) (B) O(n1/3) (C) O(n) (D) O(n2) 2.设某链表中最常用的操作是在链表的尾部插入或删除元素,则 选用下列( )存储方式最节省运算时间。 (A) 单向链表(B) 单向循环链表 (C) 双向链表(D) 双向循环链表 3.设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为( )。 (A) s->next=p->next;p->next=-s; (B) q->next=s; s->next=p; (C) p->next=s->next;s->next=p; (D) p->next=s;s->next=q; 4.设输入序列为1、2、3、4、5、6,则通过栈的作用后可以得到的输出序列为( )。 (A) 5,3,4,6,1,2 (B) 3,2,5,6,4,1 (C) 3,1,2,5,4,6 (D) 1,5,4,6,2,3 5.设有一个10阶的下三角矩阵A(包括对角线),按照从上到下、从左到右的顺序存储到连续的55个存储单元中,每个数组元素占1个字节的存储空间,则A[5][4]地址与A[0][0]的地址之差为( )。 (A) 10 (B) 19 (C) 28 (D) 55

6.设一棵m叉树中有N1个度数为1的结点,N2个度数为2的结点,……,Nm个度数为m的结点,则该树中共有( )个叶子结点。 (A) (B) (C) (D) 7. 二叉排序树中左子树上所有结点的值均( )根结点的值。 (A) < (B) > (C) = (D) != 8. 设一组权值集合W=(15,3,14,2,6,9,16,17),要求根据这些权值集合构造一棵哈夫曼树,则这棵哈夫曼树的带权路径长度 为( )。 (A) 129 (B) 219 (C) 189 (D) 229 9. 设有n个关键字具有相同的Hash函数值,则用线性探测法把这n个关键字映射到HASH表中需要做( )次线性探测。 (A) n2 (B) n(n+1) (C) n(n+1)/2 (D) n(n-1)/2 10.设某棵二叉树中只有度数为0和度数为2的结点且度数为0的结点数为n,则这棵二叉中共有( )个结点。 (A) 2n (B) n+l (C) 2n-1 (D) 2n+l 11.设一组初始记录关键字的长度为8,则最多经过( )趟插入排序可以得到有序序列。 (A) 6 (B) 7 (C) 8 (D) 9 12.设一组初始记录关键字序列为(Q,H,C,Y,P,A,M,S,R,D,F,X),则按字母升序的第一趟冒泡排序结束后的结果是( )。 (A) F,H,C,D,P,A,M,Q,R,S,Y,X (B) P,A,C,S,Q,D,F,X,R,H,M,Y

计算机数据结构考研真题及其答案

第1章绪论 一、选择题 1. 算法的计算量的大小称为计算的()。【北京邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于()【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(1),它必须具备(2)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】 4.一个算法应该是()。【中山大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性D.A和C. 5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为()两大类。【武汉交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构

计算机考研数据结构真题汇总

一.选择题篇 1. 算法的计算量的大小称为计算的()。【北京邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度 2. 算法的时间复杂度取决于()【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(1)它必须具备(2)这三个特性。【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 4.一个算法应该是()。【中山大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C. 5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间

(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为()两大类。【武汉交通科技大学 1996 一、4(2分)】A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 8.以下与数据的存储结构无关的术语是()。【北方交通大学 2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈 9.以下数据结构中,哪一个是线性结构()?【北方交通大学 2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串 10.以下那一个术语与数据的存储结构无关?()【北方交通大学 2001 一、2(2分)A.栈 B. 哈希表 C. 线索树 D. 双向链表 11.在下面的程序段中,对x的赋值语句的频度为()【北京工商大学 2001 一、10(3分)】FOR i:=1 TO n DO FOR j:=1 TO n DO x:=x+1; A. O(2n) B.O(n) C.O(n2) D.O(log2n)

计算机考研数据结构试卷一(练习题含答案)

数据结构试卷1 一、单选题 1.栈和队列的共同特点是( )。 A.只允许在端点处插入和删除元素 B.都是先进后出 C.都是先进先出 D.没有共同点 2.用链接方式存储的队列,在进行插入运算时( ). A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D.头、尾指针可能都要修改 3.以下数据结构中哪一个是非线性结构?( ) A. 队列 B. 栈 C. 线性表 D. 二叉树 4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放 位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚 注(10)表示用10进制表示。 A.688 B.678 C.692 D.696 5.树最适合用来表示( )。 A.有序数据元素 B.无序数据元素 C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据 6.二叉树的第k层的结点数最多为( ). A.2k-1 B.2K+1 C.2K-1 D. 2k-1 7.若有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个记录的文件进行快速排序,所需要的辅助存储空间大致为 n) D. O(n2) A. O(1) B. O(n) C. O(1og 2 9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选 用H(K)=K %9作为散列函数,则散列地址为1的元素有()个, A.1 B.2 C.3 D.4 10.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通 图。 A.5 B.6 C.7 D.8 二、填空题 1.通常从四个方面评价算法的质量:_________、_________、_________和 _________。 2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。 3.假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J)),则树中所含 的结点数为__________个,树的深度为___________,树的度为_________。 4.后缀算式9 2 3 +- 10 2 / -的值为__________。中缀算式(3+4X)-2Y/3对应 的后缀算式为_______________________________。 5.若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩 子的两个指针。在这种存储结构中,n个结点的二叉树共有________个指针

2018计算机考研:计算机数据结构测试题(九)

2018计算机考研:计算机数据结构测试题(九) 2018考研,计算机专业课考试科目为:计算机组成原理、数据结构、操作系统以及计算机网络等,需要大家记忆的知识点有很多,但是不能死机硬背,还是要理解为主的,融会贯通才能把题做好,拿到高分,小编就为大家分享计算机数据结构测试题及参考答案,希望计算机考研的考生在复习之余能够认真做题,巩固知识。 计算机数据结构测试题(九) 一、选择题(24分) 1.下面关于线性表的叙述错误的是( )。 (A) 线性表采用顺序存储必须占用一片连续的存储空间 (B) 线性表采用链式存储不必占用一片连续的存储空间 (C) 线性表采用链式存储便于插入和删除操作的实现 (D) 线性表采用顺序存储便于插入和删除操作的实现 2.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有( )个空指针域。 (A) 2m-1 (B) 2m (C) 2m+1 (D) 4m 3.设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为( )。 (A) R-F (B) F-R (C) (R-F+M)%M (D) (F-R+M)%M

4.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为( )。 (A) BADC (B) BCDA (C) CDAB (D) CBDA 5.设某完全无向图中有n个顶点,则该完全无向图中有( )条边。 (A) n(n-1)/2 (B) n(n-1) (C) n2 (D) n2-1 6.设某棵二叉树中有2000个结点,则该二叉树的最小高度为( )。 (A) 9 (B) 10 (C) 11 (D) 12 7.设某有向图中有n个顶点,则该有向图对应的邻接表中有( )个表头结点。 (A) n-1 (B) n (C) n+1 (D) 2n-1 8.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行一趟快速排序的结果为( )。 (A) 2,3,5,8,6 (B) 3,2,5,8,6 (C) 3,2,5,6,8 (D) 2,3,6,5,8 二、填空题(24分) 1. 1. 为了能有效地应用HASH查找技术,必须解决的两个问题是 ____________________和__________________________。 2. 2. 下面程序段的功能实现数据x进栈,要求在下划线处填上正确的语句。 typedef struct {int s[100]; int top;} sqstack; void push(sqstack &stack,int x)

南京邮电大学2005年数据结构考研试卷

南 京 邮 电 学 院 2005年攻读硕士学位研究生入学考试 数 据 结 构 试 题 一、单选题(每题3分,共30分) 1. 设使用某算法对n 个元素进行处理,所需的时间是 T(n) = 100n log 2n + 200n + 2000 则该算法的渐进时间复杂度为 。 A. O(1) B. O(n) C. O(200n) D. O(nlog 2n) 2. 设顺序表的长度为n ,并设从表中删除元素的概率相等。则在平均情况下,从表中删除一个元素需要移动的元素个数是 。 A. (n -1)/2 B. n/2 C. n(n -1)/2 D. n(n +1)/2 3. 如果只保存一个n 阶对称矩阵a 的下三角元素(含对角线元素),并采用行主序存储在一维数组b 中,a[i][j](或a[i, j])存于b[k],则对i

大数据结构考研真题及其问题详解

一、选择题 1. 算法的计算量的大小称为计算的( B )。【邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C )【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(C),它必须具备(B)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【理工大学 1999 一、1(2分)【交通科技大学 1996 一、1( 4分)】 4.一个算法应该是( B )。【大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性D.A和C. 5. 下面关于算法说法错误的是( D )【理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是( C )【理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为( C )两大类。【交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 8.以下与数据的存储结构无关的术语是( D )。【北方交通大学 2000 二、1(2分)】 A.循环队列 B. 链表 C. 哈希表 D.栈

数据结构考研真题及其答案完整版

数据结构考研真题及其 答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

一、选择题 1. 算法的计算量的大小称为计算的( B )。【北京邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度 2. 算法的时间复杂度取决于(C )【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(C),它必须具备(B)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】 4.一个算法应该是( B )。【中山大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C. 5. 下面关于算法说法错误的是( D )【南京理工大学 2000 一、1(分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是( C )【南京理工大学 2000 一、2 (分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为( C )两大类。【武汉交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 8.以下与数据的存储结构无关的术语是( D )。【北方交通大学 2000 二、1(2分)】 A.循环队列 B. 链表 C. 哈希表 D.栈 9.以下数据结构中,哪一个是线性结构( D ) 【北方交通大学 2001 一、1(2分)】 A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串 10.以下那一个术语与数据的存储结构无关( A )【北方交通大学 2001 一、2(2分)】 A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为(C )【北京工商大学 2001 一、10(3分)】 FOR i:=1 TO n DO

数据结构考研试题精选及答案第1章绪论

绪论 一、选择题 1.算法的计算量的大小称为计算的( 复杂性 A.效率 B. 2. 算法的时间复杂度取决于 A.问题的规模 3. 计算机算法指的是( (1) A .计算方法 法 (2) A .可执行性、 B. 1), B. 4. 5. )。【北京邮电大学 2000二、3 (20/8 C. 现实性 D. 难度 、1 (2 分)] ( )【中科院计算所1998 待处理数据的初态 它必须具备( 排序方法 C. A 和 B 这三个特性。 C. 解决问题的步骤序列 D. 分) 】 调度方 可移植性、可扩充性 B. 可执行性、确定性、有穷性 易读性、稳定性、安全性 、1 ( 4 C.确定性、有穷性、稳定性 【南京理工大学 1999 一、1 (2分) 一个 算法应该是( )。【中山大学 A .程序 B .问题求解步骤的描述 下面关于算法说法错误的是( A. 算法最终必须由计算机程序实现 B. 为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D.以上几个都是错误的 下面说法错误的是( )【南京理工大学 2000 一、2 (1.5分)] (1 ) (2) (3) (4) A . D. 【武汉交通科技大学 1996 1998 二、1 (2 分)】 C .要满足五个基本特性 D . A 和C. 分) 】 )【南京理工大学2000 一、1 (1.5分)】 )【南京理工大学 2000 算法原地工作的含义是指不需要任何额外的辅助空间 在相同的规模n 下,复杂度O(n)的算法在时间上总是优于复杂度 O(2n )的算法 所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 同一个算法,实现语言的级别越高,执行效率就越低 (1) B.(1),(2) 7.从逻辑上可以把数据结构分为 A.动态结构、静态结构 C.线性结构、非线性结构 &以下与数据的存储结构无关的术语是 A.循环队列 B. 链表 9.以下数据结构中,哪一个是线性结构 A.广义表 B. 二叉树 10 .以下那一个术语与数据的存储结构无关? A.栈 B. 11 .在下面的程序段中, 分)] 6. C.(1) ,(4) D.(3) ( )两大类。【武汉交通科技大学 1996 一、4 ( 2分)] B .顺序结构、链式结构 .初等结构、构造型结构 )。【北方交通大学 2000二、1 (2分)] 哈希表 D. 栈 )?【北方交通大学 2001 一、1 (2分)] 稀疏矩阵 ) 线索树 C. C. 哈希表 C. 对 x 的赋值语句的频度为( D.串 【北方交通大学2001 一、2 (2分)】 D. 双向链表 )【北京工商大学 2001 一、10 (3 FOR i:=1 FOR j:=1 x:=x+1; A. O(2 n) TO TO DO DO .0(n) 2 C . O(n) D .O(log 2n ) 12.程序段 FOR i:=n-1 DOWNTO 1 DO FOR j:=1 TO i DO

天津大学数据结构和程序设计考研真题

天津大学数据结构和程序设计考研真题-考研资料-笔记讲义 许多学生在考研复习的时候,都会遇到重点不明确,不知道从何复习的情况。为此,天津考研网建议,考研复习中,专业的考研复习资料,是帮助考生能够快速掌握复习重点及方法必不可少的因素,然后就是真题和讲义,可以让同学了解历年考研的出题方向和大致范围。天津考研网推出了天津大学数据结构和程序设计的考研复习资料及真题解析班,以下为详细介绍: 天津大学数据结构和程序设计考研真题等资料由天津考研网签约的天津大学计算机科学与技术学院高分考研学生历时近一月所作,该考生在考研中取得了专业课129分的好成绩并在复试中更胜一筹,该资料包含该优秀本校考生的考研经验、考研试题解题思路分析、复试流程经验介绍以及针对官方指定参考书的重难要点并根据天津大学本科授课重点整理等,从漫漫初试长路到紧张复试亮剑为各位研友提供全程考研指导攻关。 特别说明:此科目06年以前科目名称为数据结构;自06年到08年科目名称改为计算机基础(包含数据结构、程序设计、计算机原理);自09年开始全国统考,科目名称为计算机学科专业基础综合;自2013年开始由学校自主命题,科目名称改为901数据结构与程序设计。 第一部分由天津考研网提供的核心复习资料: 天津大学数据结构和程序设计资料编者序言:本文的重点在于C++,数据结构的复习和复试基本情况介绍。C++、数据结构又分别从复习规划,复习用书,重点知识点结合历年考题这四个方面来展开的。复习规划大家务必看一下,然后根据自己的实际情况在制定自己的复习时间,因为内容很多,大多数同学都在考试之前复习不完,在心理因素上就落了一节。重点知识点一定要看了,这些知识点几乎每年都会有题了。另外我还给了历年试题的答案供大家参考。有的答案是自己做的答案,可能会有疏忽的地方。望大家提出宝贵的意见和建议。复试的东西现在了解一下即可,等到进复试了,还是有足够的时间看的。另外我还给了些自己复习心得。考完后感慨很多,回顾了这多半年来自己的成败得失。希望大家从一开始就沿着比较高效的方向前进,减少不必要时间的浪费。本资料格式为A4纸打印版,总量达到了130页共计50000余字,清晰易复习,已于编写者签订资料保真转让协议,各位研友可放心使用参考!特别提示:本站尽力保证资料的有用性,但由于个人复习态度进度不同,故请酌情参考本资料! 天津大学数据结构和程序设计考研真题等资料目录 一、学院专业综述 二、近年来的录取情况及分数线 三、05、06年专业课试题的变化及其今后的趋势 四、复习策略和复习时间的统筹安排及所需要的辅助资料 五、C++和数据结构复习规划及复习侧重点(特别是05,06年的变化) 5七、复习经验与教训(学习生活心理诸方面) 八、关于数学和政治复习的小小的建议 九、计算机复试 十、附言

考研资料数据结构试题汇总

第一章绪论 一、填空题(每空1分,共33分) 1. 一个计算机系统包括硬件系统和软件系统两大部分。 2. 一台计算机中全部程序的集合,称为这台计算机的软件资源/(系统)。 3. 计算机软件可以分为系统软件和应用软件两大类。科学计算程序包属于应用软 件,诊断程序属于系统软件(工具)。 4. 一种用助忆符号来表示机器指令的操作符和操作数的语言是汇编语言。 5. 数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和运算等的学科。 6. 数据结构被形式地定义为(D, R),其中D是数据元素的有限集合,R是D上的关系有限集合。 7. 数据结构包括数据的逻辑结构、数据的存储结构和数据的运算这三个方面的内容。 8. 数据结构按逻辑结构可分为两大类,它们分别是线性结构和非线性结构。 9. 线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。 10.在线性结构中,第一个结点没有前驱结点,其余每个结点有且只有1个前驱结点;最后一个结点没有后续结点,其余每个结点有且只有1个后续结点。 11. 在树形结构中,树根结点没有前驱结点,其余每个结点有且只有 1 个前驱结点;叶子结点没有后续结点,其余每个结点的后续结点数可以任意多个。 12. 在图形结构中,每个结点的前驱结点数和后续结点数可以任意多个。 13.数据的存储结构可用四种基本的存储方法表示,它们分别是顺序、链式、索引和散列。 14. 数据的运算最常用的有5种,它们分别是插入、删除、修改、查找、排序。 15. 一个算法的效率可分为时间效率和空间效率。 16. 任何一个C程序都由一个主函数和若干个被调用的其它函数组成。 二、单项选择题(每小题1分,共15分) ( B ) 1. 通常所说的主机是指∶ A) CPU B) CPU和内存C) CPU、内存与外存D) CPU、内存与硬盘 ( C )2. 在计算机内部,一切信息的存取、处理和传送的形式是∶ A) ACSII码B) BCD码C)二进制D)十六进制 ( D )3. 软件与程序的区别是∶ A)程序价格便宜、软件价格昂贵; B)程序是用户自己编写的,而软件是由厂家提供的; C) 程序是用高级语言编写的,而软件是由机器语言编写的; D) 软件是程序以及开发、使用和维护所需要的所有文档的总称,而程序只是软件的一部分。 ( C )4. 所谓“裸机”是指∶ A) 单片机B)单板机C) 不装备任何软件的计算机D) 只装备操作系统的计算机 ( D )5. 应用软件是指∶ A)所有能够使用的软件B) 能被各应用单位共同使用的某种软件 C)所有微机上都应使用的基本软件D) 专门为某一应用目的而编制的软件

哈尔滨工程大学-考研数据结构真题-12_

哈尔滨工程大学-考研数据结构真题-12_ 哈尔滨工程大学试卷考试科目: 数据结构A 卷题号一二三四五总分分数评卷人一、单项选择题(每空1分,共15分)1、以下数据结构中,从逻辑结构看,()和其他数据结构不同。 A.树B.字符串C.队列D.栈2、对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为()。 A.O(n) O(n) B.O(n) O(1) C.O(1) O(n) D.O(1) O(1) 3、有六个元素A,B,C,D,E,F的顺序进栈,()不是合法的出栈序列。 A.DEFCBA B.EDCBFA C.EFDBCA D.EDCFBA 4、字符串“ABCDEF”的子串有()个。 A.19 B.20 C.21 D.22 5、顺序表中插入一个元素,需要平均移动的元素个数为()。 A.(n-1)/2 B.n/2 C.(n+1)/2 D.n-1 6、非空的单循环链表head 的尾结点(由P所指向)满足()。 A.p-next ==NULL B.p==NULL C.p-next==head D.p==head 7、若A是中序线索二叉树中的一个结点,且A不为根,则A的前驱为( )。 A.A的右子树中最右的结点B.A的左子树中最左的结点C.A 的右子树中最左的结点D.A的左子树中最右的结点8、如某二叉树有30个叶子结点,有20个结点仅有一个孩子,则该二叉树中有两个孩子的结点数为()。 A.29 B.30 C.31 D.19 9、二维数组A的每个元素是由8个字符组成的串,其行下标i=0,1,…,9,列下标j=1,2,…,10。若A按行序为主序存储,元素A的起始地址与当A按列序为主序存储时的元素()的起始地址相同(设每个字符占一个字节)。 A.A B.A C.A D.A 10、图的深度优先遍历算法类似于二叉树的()。

计算机考研数据结构试卷十四(练习题含答案)

共25套适用于计算机考研数据结构系统练习 (PS:其他正在整理,敬请期待) 数据结构试卷14 一、填空题 1、二维数组A[10][20]采用列序为主方式存储,每个元素占一个存储单元并且A[0][0]的存储地址是200,则A[6][12]的地址是____。 2、二维数组A[10..20][5..10]采用行序为主方式存储,每个元素占4个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的地址是____。 3、求下列广义表操作的结果: (1) GetTail[GetHead[((a,b),(c,d))]]; (2) GetTail[GetHead[GetTail[((a,b),(c,d))]]] 4、已知一个有向图的邻接矩阵表示,计算第i个结点的入度的方法是____。 5、已知一个图的邻接矩阵表示,删除所有从第i个结点出发的边的方法是____。 6、在利用快速排序方法对一组记录(54,38,96,23,15,72,60,45,83)进行快速排序时,递归调用而使用的栈所能达到的最大深度为____,共需递归调用的次数为____,其中第二次递归调用是对____一组记录进行快速排序。 7、在堆排序,快速排序和归并排序中,若只从存储空间考虑,则应首先选取____方法,其次选取____方法,最后选取____方法;若只从排序结果的稳定性考虑,则应选取____方法;若只从平均情况下排序最快考虑,则应选取____方法;若只从最坏情况下排序最快并且要节省内存考虑,则应选取____方法。 二、选择题 1、二分查找和二叉排序树的时间性能【】。 A. 相同 B. 不相同 2、采用二分查找方法查找长度为n的线性表时,每个元素的平均查找长度为【】。 A.O(n2) B. O(nlog2n) C. O(n) D. O(log2n) 3、在待排序的元素序列基本有序的前提下,效率最高的排序方法是【】。 A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序 4、下述几种排序方法中,要求内存量最大的是【】。 A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序 5、设有两个串p和q,求q在p中首次出现的位置的运算称作【】。 A. 连接 B. 模式匹配 C. 求子串 D. 求串长 6、二维数组A中,每个元素A[i][j]的长度为3个字节,行下标i从0到7,列下标j 从0到9,从首地址SA开始连续存放在存储器内,该数组按列存放时,元素A[4][7]的起始地址为【】。 A. SA+141 B. SA+180 C. SA+222 D. SA+225 7、某二叉树的前序遍历结点访问顺序是abdgcefh,中序遍历的结点访问顺序是 dgbaechf,则其后序遍历的结点访问顺序是【】。 A. bdgcefha B. gdbecfha C. bdgaechf D. gdbehfca

数据结构精选考研试题

数据结构精选考研试题 [注]:编写程序可选用任一种高语言,算法描述可采用类语言,必要时加上注释一、回答下列问题:[20分] 1、算法的定义和性质2、为什么说数组与广义表是线性表的推广? 3、什么是结构化程序设计? 4、哈希方法的基本思想 5、给出一不稳定排序方法名称与实例二、构造结果:[24分] 确定x:=x+1语句在下面程序段中的频率,要求写出分析过程。for i:=1 to n do for j:=1 to I do for k:=1 to j do x:=x+1 画出对长度为8的有序表进行折半查找的判定树,并求其在等概率时查找成功的平均查找长度。已知一棵二叉树如右图,给出对这棵二叉树进行前序、中序、后序遍历的结果序列.假设用于通讯的电文仅8个字母组成,字母在电文中出现的频率

分别为{2,3,5,7,11,4,13,15},试为这8个字母设计哈夫曼编码.在地址空间为0~15的散列区中,对以下关键字序列构G造哈希表,关键字序列为,H(x)=[i/2] ,其中i为关键字中第一字母在字母表中的序号。要求用线性探测开放定址法处理冲突,并求出在等概率情况下查找成功的平均查找长度。构造有7个元素组成的线性表一实例,是进行快速排序时比较次数最少的初始排序。三、写一算法,完成对这棵二叉树的左右子树的交换,设二叉树以二叉链表作存储结构。[15分] 四、编写一非递归算法,对一棵二叉排序树实现中序遍历。[15分] 五、编写程序,完成下列功能:[15分] 1.读入整数序列,以整数0作为序列的结束标志,建立一个单链表。2.实现单链表原地逆转,即单链表中结点指针方向反转,反转操作不使用额外的链表结点,可使用临时工作单元。例:输入序列为:1,8,4,3,0 六、

数据结构考研真题及其答案

一、选择题 1.算法的计算量的大小称为计算的(B)。【北京邮电大学2000二、3(20/8分)】 A.效率B.复杂性C.现实性D.难度 2.算法的时间复杂度取决于(C)【中科院计算所1998 二、1(2分)】 A.问题的规模B.待处理数据的初态和B 3.计算机算法指的是(C),它必须具备(B)这三个特性。 (1)A.计算方法B.排序方法C.解决问题的步骤序列D.调度方法 (2)A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性 C.确定性、有穷性、稳定性 D.易读性、稳定性、安全性 【南京理工大学1999一、1(2分)【武汉交通科技大学1996一、1(4分)】

4.一个算法应该是(B)。【中山大学1998二、1(2分)】 A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A和C. 5.下面关于算法说法错误的是(D)【南京理工大学2000一、1(分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C.算法的可行性是指指令不能有二义性 D.以上几个都是错误的 6.下面说法错误的是(C)【南京理工大学2000一、2(分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执

行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1)B.(1),(2)C.(1),(4)D.(3) 7.从逻辑上可以把数据结构分为(C)两大类。【武汉交通科技大学1996一、4(2分)】 A.动态结构、静态结构B.顺序结构、链式结构 C.线性结构、非线性结构D.初等结构、构造型结构 8.以下与数据的存储结构无关的术语是(D)。【北方交通大学2000二、1(2分)】 A.循环队列B.链表C.哈希表D.栈 9.以下数据结构中,哪一个是线性结构(D)【北方交通大学2001一、1(2分)】 A.广义表B.二叉树C.稀疏矩阵D.串 10.以下那一个术语与数据的存储结构无关(A)【北方交通大学2001一、2(2分)】

10考研数据结构试题分析

一、总体分析 计算机科学与技术学科全国硕士研究生统一入学考试已经进行了两次。数据结构部分的考试范围要求掌握: 1,基本数据结构的知识 2,算法设计和编程的能力 3,综合应用算法和数据结构的技能 从考试的命题来看,2010年比2009年的题目难度要大一些。在这里,我对2009年考题与2010年考题的考试范围进行了简单的比较: A, 选择题部分,请参考表1

表1 2010年选择题还有一道题(11题)是对几种排序方法的考察。 由表1我们可以总结出,在选择题部分,各主要知识点分布如下,请参考表2: 表2 B ,综合应用题部分的试题范围如下:

总体上讲,2009年的试题较简单,2010年的试题比较复杂,且难度稍大,但平时教学中应当都教过,或练习都做过。 二、2010 年考试改卷的基本情况 2010年考试改卷的大概情况如下: 客观题是机改,数据结构部分总分22分,平均得分约为17分,失分较多的是 第2题(双端队列) 第5题(K叉树叶结点的计算) 第8题(拓扑排序的序列个数) 第10题(快速排序递归次数); 主观题是人改,数据结构部分总分23分 第41题10分,平均得分5分,失分最多的是 计算散列表长度(2分),多数考生未得分。

将给定元素存储到散列表中(6分),平均得3分。如果第1问错了,不影响第2问得分;但可惜散列函数有不少同学选择不完全对。 计算平均查找长度(2分),平均得1分。 第42题是算法设计题13分,平均得6~8分,失分最多的是算法效率达不到要求。 许多考生成绩差的主要原因: 1,本科数据结构课程学习不够扎实; 2,考前复习不够充分; 3,考试时审题不仔细,急于给出答案,未严格推导。 三、2010年考试试卷分析 由于篇幅有限,在此只例举综合题两道大题进行分析。 二、综合应用题 41题:(10分)将关键字序列{ 7, 8, 30, 11, 18, 9, 14 } 散列存储到散列表中,散列表的存储空间是一个下标从 0 开始的一个一维数组散列,函数为: H(key) = (key′3) MOD 7 处理冲突采用线性探测再散列法,要求装载因子为 0.7 问题: (1) 请画出所构造的散列表。 (2) 分别计算等概率情况下,查找成功和查找不成功的平均查找长度。

数据结构考研真题及其答案

数据结构考研真题及其 答案 -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

一、选择题 1. 算法的计算量的大小称为计算的( B )。【北京邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度 2. 算法的时间复杂度取决于(C )【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(C),它必须具备(B)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【南京理工大学 1999 一、1(2分)【武汉交通科技大学1996 一、1( 4分)】 4.一个算法应该是( B )。【中山大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C. 5. 下面关于算法说法错误的是( D )【南京理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是( C )【南京理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 2

(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为( C )两大类。【武汉交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是( D )。【北方交通大学 2000 二、1(2分)】 A.循环队列 B. 链表 C. 哈希表 D.栈 9.以下数据结构中,哪一个是线性结构( D ) 【北方交通大学 2001 一、1(2分)】 A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串 10.以下那一个术语与数据的存储结构无关( A )【北方交通大学 2001 一、2(2分)】 3

2019年广东暨南大学数据结构考研真题

2019年广东暨南大学数据结构考研真题 一、单项选择题(每题2分,共30分) 1.在任意一棵二叉树的先序序列和后序序列中,各叶子之间的相对次序关系()。 A.不一定相同 B.互为逆序 C.都不相同 D.都相同 2.深度为4的二叉树至多有结点数为()。 A.18 B.14 C.15 D.16 3.在一个具有n个顶点的有向图中,若所有顶点的入度数之和为m,则所有顶点的度数之和为()。 A.m B.m-1 C.m+1 D.2m 4.快速排序在()情况下最不利于发挥其长处。 A.被排序的数据量太大. B.被排序数据中含有多个相同的关键字 C.被排序的数据完全无序 D.被排序的数据已基本有序 5.一组记录的关键字为(45,80,55,40,42,85),则利用堆排序的方法建立的初始堆为()。 A.(80,45,55,40,42,85) B.(85,80,55,40,42,45) C.(85,80,55,45,42,40) D.(85,55,80,42,45,40) 6.对有18个元素的有序表(下标为1~18)作折半查找,则查找A[3]的比较序列的下标为()。 A.1,2,3 B.9,5,2,3 C.9,5,3 D.9,4,2,3 7.具有n个顶点的完全有向图的边数为()。 A.n(n-1)/2 B.n(n-1) C.n2 D.n2-1 8.利用逐点插入法建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素35要进行()。 A.4次 B.5次 C.3次 D.2次 9.判定一个有向图是否存在回路除了可以利用拓扑排序方法外,还可以用()。

相关文档
最新文档