1-1

无向连通图所有顶点的度之和为偶数。 (3分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-2

如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G一定有2个连通分量。 (3分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-3

所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。 (2分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-4

某二叉树的前序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无右孩子。 (3分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-5

算法分析的两个主要方面是时间复杂度和空间复杂度的分析。 (2分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-6

若一个栈的输入序列为{1, 2, 3, 4, 5},则不可能得到{3, 4, 1, 2, 5}这样的出栈序列。 (3分)

T         F

 

Author: 徐镜春

Organization: 浙江大学

1-7

将一棵完全二叉树存于数组中(根结点的下标为1)。则下标为23和24的两个结点是兄弟。 (3分)

T         F

 

Author: 何钦铭

Organization: 浙江大学

1-8

若用链表来表示一个线性表,则表中元素的地址一定是连续的。 (3分)

T         F

 

Author: 陈越

Organization: 浙江大学

1-9

在一棵由包含4、5、6等等一系列整数结点构成的二叉搜索树中,如果结点4和6在树的同一层,那么可以断定结点5一定是结点4和6的父亲结点。 (3分)

T         F

 

Author: DS课程组

Organization: 浙江大学

1-10

将1、2、3、4、5、6顺序插入初始为空的AVL树中,当完成这6个元素的插入后,该AVL树的先序遍历结果是:4、2、1、3、5、6。 (3分)

T         F

 

2-1

在并查集问题中,已知集合元素0~8所以对应的父结点编号值分别是{ 1, -4, 1, 1, -3, 4, 4, 8, -2
}(注:−n表示树根且对应集合大小为n),那么将元素6和8所在的集合合并(要求必须将小集合并到大集合)后,该集合对应的树根和父结点编号值分别是多少? (4分)

* 4和-5
* 8和-5
* 8和-6
* 1和-6
Author: DS课程组

Organization: 浙江大学

2-2

下列函数中,哪个函数具有最快的增长速度? (4分)

* N(logN)​4​​
* N​3​​
* NlogN​2​​
* N​2​​logN
Author: DS课程组

Organization: 浙江大学

2-3

给定N×N×N的三维数组A,则在不改变数组的前提下,查找最小元素的时间复杂度是:(4分)

* O(NlogN)
* O(N​2​​)
* O(N​3​​logN)
* O(N​3​​)
Author: DS课程组

Organization: 浙江大学

2-4

设一棵非空完全二叉树 T 的所有叶节点均位于同一层,且每个非叶结点都有 2 个子结点。若 T 有 k 个叶结点,则 T的结点总数是:(4分)

* k​2​​
* 2k−1
* 2k
* 2​k​​−1
Author: 考研真题

Organization: 浙江大学

2-5

对最小堆(小顶堆){1,3,2,12,6,4,8,15,14,9,7,5,11,13,10} 进行三次删除最小元的操作后,结果序列为:(4分)

* 4,6,5,12,7,10,8,15,14,9,13,11
* 4,5,6,12,7,10,8,15,14,13,9,11
* 4,5,6,7,8,9,10,11,12,13,14,15
* 4,6,5,13,7,10,8,15,14,12,9,11
Author: DS课程组

Organization: 浙江大学

2-6

三叉树中,度为1的结点有5个,度为2的结点3个,度为3的结点2个,问该树含有几个叶结点? (4分)

* 10
* 13
* 8
* 12
Author: DS课程组

Organization: 浙江大学

2-7

将{5, 2, 7, 3, 4, 1, 6}依次插入初始为空的二叉搜索树。则该树的后序遍历结果是:(4分)

* 1, 4, 3, 2, 6, 7, 5
* 1, 2, 3, 4, 6, 7, 5
* 1, 4, 2, 6, 3, 7, 5
* 5, 4, 3, 7, 6, 2, 1
Author: DS课程组

Organization: 浙江大学

2-8

表达式a*(b+c)-d的后缀表达式是: (4分)

* a b c d * + -
* a b c + * d -
* a b c * + d -
* - + * a b c d
Author: DS课程组

Organization: 浙江大学

2-9

设一段文本中包含字符{a, b, c, d, e},其出现频率相应为{3, 2, 5, 1, 1}。则经过哈夫曼编码后,文本所占字节数为: (4分)

* 40
* 36
* 25
* 12
Author: DS课程组

Organization: 浙江大学

2-10

在图中自d点开始进行深度优先遍历算法可能得到的结果为: (4分)

* d,a,e,b,c,f
* d,e,a,c,f,b
* d,f,c,e,a,b
* d,a,c,f,e,b
Author: DS课程组

Organization: 浙江大学

2-11

在一个不带头结点的非空链式队列中,假设f和r分别为队头和队尾指针,则插入s所指的结点运算是( )。 (4分)

* f->next=s; f=s;
* r->next=s; r=s;
* s->next=s; r=s;
* s->next=f; f=s;
Author: 严冰

Organization: 浙江大学城市学院

2-12

在单链表中,若p所指的结点不是最后结点,在p之后插入s所指结点,则执行 (4分)

* s->next=p->next; p->next=s;
* s->next=p; p->next=s;
* s->next=p->next; p=s;
* p->next=s; s->next=p;
 

5-1

下列代码的功能是从一个大顶堆H的某个指定位置p开始执行下滤。
void PercolateDown( int p, PriorityQueue H ) { int child; ElementType Tmp =
H->Elements[p]; for ( ; p * 2 <= H->Size; p = child ) { child = p * 2; if (
child!=H->Size && (6分) ) child++; if ( H->Elements[child] > Tmp ) (6分); else
break; } H->Elements[p] = Tmp; }
Author: 陈越

Organization: 浙江大学

Time Limit: 400 ms

Memory Limit: 64 MB

5-2

下列代码的功能是返回带头结点的单链表L的逆转链表。
List Reverse( List L ) { Position Old_head, New_head, Temp; New_head = NULL;
Old_head = L->Next; while ( Old_head ) { Temp = Old_head->Next; (6分); New_head
= Old_head; Old_head = Temp; } (6分); return L; }

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信