-
给定一棵二叉树,如果每个节点都只有左子树或右子树(即没有两个子节点同时存在),则这种树是什么类型?
- A. 满二叉树
- B. 斜树
- C. 平衡二叉树
- D. 完全二叉树
-
图中没有任何边的子图称为:
- A. 完全图
- B. 稀疏图
- C. 零图
- D. 无环图
-
下列哪个是图的存储方式?
- A. 二叉链表
- B. 邻接矩阵
- C. 顺序表
- D. 单链表
-
若一无向图有 n 个顶点,m 条边,则该图的邻接矩阵的空间复杂度是:
- A. O(n)
- B. O(m)
- C. O(n^2)
- D. O(n+m)
-
在下列哪种图中,顶点的入度和出度相等?
- A. 无向图
- B. 有向图
- C. 完全图
- D. 欧拉图
-
图的深度优先遍历算法的主要特点是:
- A. 先访问所有邻接顶点
- B. 优先访问度数最大的顶点
- C. 尽可能深入访问图的顶点
- D. 只访问一个路径上的顶点
-
下列关于最小生成树的描述,正确的是:
- A. 最小生成树中一定包含所有边
- B. 最小生成树的边数是 n-1(n为顶点数)
- C. 最小生成树不包含回路
- D. 最小生成树的权值总和最大
-
在无向连通图中,使用广度优先遍历算法可以得到:
- A. 一棵最小生成树
- B. 一棵哈夫曼树
- C. 一棵广度优先生成树
- D. 一棵最大生成树
-
Dijkstra算法用于解决哪类问题?
- A. 最小生成树
- B. 最短路径
- C. 拓扑排序
- D. 欧拉回路
-
在图的广度优先搜索中,使用的数据结构是:
- A. 队列
- B. 栈
- C. 优先队列
- D. 哈希表
-
Kruskal算法实现最小生成树的核心数据结构是:
- A. 优先队列
- B. 并查集
- C. 二叉树
- D. 堆
-
下列哪种图的遍历方式一定能访问到所有的顶点?
- A. 深度优先遍历
- B. 广度优先遍历
- C. 拓扑排序
- D. A 和 B 都是
-
在有向图中,如果每个顶点的出度和入度都为 1,则该图是什么?
- A. 强连通图
- B. 完全图
- C. 环形图
- D. 稀疏图
-
下面哪种算法用于检测图中的环?
- A. Floyd算法
- B. Tarjan算法
- C. Prim算法
- D. Bellman-Ford算法
-
图中的“割边”指的是:
- A. 图中的最短边
- B. 从图中去除后使图不连通的边
- C. 图中度数最高的边
- D. 连接两个不同连通分量的边
-
Prim算法和Kruskal算法用于:
- A. 生成最小生成树
- B. 查找最短路径
- C. 图的拓扑排序
- D. 寻找环路
-
关于拓扑排序,正确的说法是:
- A. 适用于有向无环图
- B. 适用于无向图
- C. 适用于无环图
- D. 适用于任意图
-
BFS(广度优先搜索)主要用于解决以下哪类问题?
- A. 寻找最短路径
- B. 计算最小生成树
- C. 检测有无回路
- D. 计算图的连通分量
-
在图的遍历中,以下哪一种方法最适合寻找无权图的最短路径?
- A. 深度优先遍历
- B. 广度优先遍历
- C. Dijkstra算法
- D. Floyd算法
-
强连通分量是指:
- A. 有向图中每个顶点都可以通过若干条路径到达其他顶点
- B. 无向图中任意两点都可以通过边到达
- C. 图中的连通分量数最少
- D. 图中环路的集合