#3658. DC8 搜索专项客观题
DC8 搜索专项客观题
第 1 题 BFS 使用的数据结构通常是( )。
{{ select(1) }}
- 栈(stack)
- 队列(queue)
- 优先队列(priority_queue)
- 并查集(DSU)
第 2 题 BFS 分层(按距离层次扩展)的直接含义是:第一次访问到某点时,其距离一定是( )。
{{ select(2) }}
- 最大距离
- 最小距离
- 随机距离
- 需要回溯才能确定的距离
第 3 题 在标准 BFS 中,为了避免同一节点被重复入队导致复杂度变差,通常应当在什么时候标记 visited( )。
{{ select(3) }}
- 出队时标记
- 入队时标记
- 扩展邻居结束后标记
- 遍历结束后统一标记
第 4 题 下面关于 BFS 的时间复杂度描述正确的是( )。设图为邻接表存储,n 个点 m 条边。
{{ select(4) }}
- O(n^2)
- O(m log n)
- O(n + m)
- O(log m)
第 5 题 多源 BFS(multi-source BFS)的典型做法是( )。
{{ select(5) }}
- 每个源点单独跑一次 BFS,取最小值
- 把所有源点同时入队,初始距离设为 0
- 把所有源点放入栈中,做 DFS
- 用 Floyd 预处理所有点对最短路
第 6 题 BFS 中“层序遍历”统计层数,常见的正确写法是( )。
{{ select(6) }}
- 每次弹出一个元素层数+1
- 记录当前队列大小 sz,循环弹出 sz 个节点作为同一层
- 只要队列不空就层数+1
- 用栈模拟队列
第 7 题 BFS 优化中,“尽早退出(early exit)”的正确含义是( )。
{{ select(7) }}
- 入队后立即退出
- 一旦弹出(出队)到终点即可退出(无权图单源到单终点)
- 一旦发现终点被入队即可退出(一定正确)
- 只要队列长度变小就退出
第 8 题 0-1 BFS 适用于边权为( )的最短路问题。
{{ select(8) }}
- 任意非负整数
- 仅 0 或 1
- 任意实数
- 可以为负数
第 9 题 “双向 BFS”(bidirectional BFS)最适合用于( )。
{{ select(9) }}
- 求有负边的最短路
- 状态空间很大且已知起点与终点的最短路搜索
- 求最小生成树
- 拓扑排序
第 10 题 “最优性剪枝(界限剪枝/Branch and Bound)”指的是( )。
{{ select(10) }}
- 当前已找到一个解就立刻结束搜索(一定正确)
- 使用上界/下界估计,若不可能优于 best 则剪枝
- 把 DFS 改为 BFS
- 去掉 visited 数组