📋 选择 / 判断题列表

支持按 ID、题目、难度、标签、来源、类别筛选
➕ 新增题目
↺ 重置
ID 题目摘要 状态 题型 类别 难度 标签 来源 创建时间 操作
769 5. 遇到墙壁或者超出地图边界的格子,坚决不能把它们放进队列里。( ) 判断题 C++ 1 BFS,判断题,边界判断 BFS测验 2026-05-19 00:03 ✏️ 🗑️
768 4. 只要地图够大,BFS 程序即使不用 `visited` 数组做访问标记,也不会变成死循环。( ) 判断题 C++ 1 BFS,判断题,visited BFS测验 2026-05-19 00:03 ✏️ 🗑️
767 3. 因为 BFS 是像水波纹一样扩散的,所以如果迷宫里有两个出口,它一定会先找到离起点近的那一个。( ) 判断题 C++ 1 BFS,判断题,最近出口 BFS测验 2026-05-19 00:03 ✏️ 🗑️
766 2. 在广度优先搜索中,我们使用"栈(先进后出)"来管理等待探索的格子。( ) 判断题 C++ 1 BFS,判断题,栈 BFS测验 2026-05-19 00:03 ✏️ 🗑️
765 **判断题** 1. 广度优先搜索就像病毒传染一样,先传染身边最近的人,再传染给外圈的人。( ) 判断题 C++ 1 BFS,判断题 BFS测验 2026-05-19 00:03 ✏️ 🗑️
764 30. 学会了 BFS 算法,你可以用它来解决什么生活中的问题?( ) A. 在象棋盘上,计算马从一个点跳到另一个点的最少步数 B. 自动玩扫雷游戏,点开一个空地自动扩散一片 C. 滴滴打车软件里,计算离你距离最近的司机 D. 以上都可以! 单选题 C++ 2 BFS,应用,综合 BFS测验 2026-05-19 00:03 ✏️ 🗑️
763 29. 当代码写出 `while (!q.empty())` 时,意思是( ) A. 只要队列不为空,探测就继续进行 B. 队列为空时才进行 C. 停顿一下 D. 清空队列 单选题 C++ 2 BFS,while(!q.empty()) BFS测验 2026-05-19 00:03 ✏️ 🗑️
762 28. 在写代码 `q.pop()` 时,它代表的动作是( ) A. 把一个元素加入队列 B. 得到队首元素的值 C. 把队首的元素从队列中踢出去(删除) D. 判断队列是不是空的 单选题 C++ 2 BFS,q.pop() BFS测验 2026-05-19 00:03 ✏️ 🗑️
761 **【第五关:综合挑战】** 27. 关于 BFS 队列操作,正确的流程是( ) A. 取出队首 -> 弹出队首 -> 观察四周 -> 符合条件的新位置入队 B. … 单选题 C++ 2 BFS,流程,综合 BFS测验 2026-05-19 00:03 ✏️ 🗑️
760 26. 如果在迷宫中,你用 BFS 第 1 次找到了终点,此时记录的步数是 10 步。如果继续搜下去,有可能找到一条 8 步的路吗?( ) A. 有可能,因为后面的路可能更好走 B. 绝不可能!BFS … 单选题 C++ 2 BFS,首次到达即最短 BFS测验 2026-05-19 00:03 ✏️ 🗑️
759 25. 你的侦察兵到达了一个格子,步数是 3 步。他同时发现了前面的格子和右边的格子。请问这两个新格子的步数分别是多少?( ) A. 都是 3 步 B. 都是 4 步 C. 一个 … 单选题 C++ 2 BFS,步数,相同层 BFS测验 2026-05-19 00:03 ✏️ 🗑️
758 24. 在写代码时,为了记住每个格子的坐标 `x`、`y` 和到达这里的步数 `step`,我们通常会把这三个变量打包成一个( )放到队列里。 A. `struct`(结构体) B. `string`(字符串) C. `char`(字符) D. `double`(小数) 单选题 C++ 2 BFS,struct,结构体 BFS测验 2026-05-19 00:03 ✏️ 🗑️
757 23. 如果你现在的格子是从起点走了 5 步到达的,那么你发现的下一个新格子,它的步数应该是多少?( ) A. 5 步 B. 4 步 C. 6 步 D. … 单选题 C++ 2 BFS,步数传递 BFS测验 2026-05-19 00:03 ✏️ 🗑️
756 **【第四关:最短步数的奥秘】** 22. BFS 能找到最短路径的根本原因在于它的扩展规律是( ) A. 按步数从小到大:先走完所有 1 步能到的,再走所有 2 步能到的... B. 按步数从大到小 C. 随机挑步数走 … 单选题 C++ 2 BFS,最短路径,按层扩展 BFS测验 2026-05-19 00:03 ✏️ 🗑️
755 21. 假设迷宫全是可以走的空地,起点在 `(0,0)`。经过 1 趟"扩散"(步数为1),哪些格子会被加入队列?( ) A. 只有 `(1,1)` B. `(0,1)` 和 `(1,0)` C. `(2,2)` … 单选题 C++ 2 BFS,扩散,步数1 BFS测验 2026-05-19 00:03 ✏️ 🗑️
754 20. 迷宫中遇到障碍物(比如墙壁标记为 `1`),当 BFS 准备把它加入队列时应该怎么做?( ) A. 把墙壁炸掉 B. 直接把它加进队列 C. 忽略它,绝不加入队列 D. 把墙变成起点 单选题 C++ 1 BFS,障碍物,墙壁 BFS测验 2026-05-19 00:03 ✏️ 🗑️
753 19. 在编程时,我们经常用 `int dx[4] = {-1, 1, 0, 0};` 和 `int dy[4] = {0, 0, … 单选题 C++ 2 BFS,方向数组 BFS测验 2026-05-19 00:03 ✏️ 🗑️
752 18. 假设地图是一个二维数组 `a[x][y]`,起点坐标是 `(0, 0)`。如果我们要向上走,行坐标 `x` 通常会( ) A. 加 1 B. 减 1 C. … 单选题 C++ 2 BFS,坐标,方向 BFS测验 2026-05-19 00:03 ✏️ 🗑️
751 17. 在二维数组地图中,除了不能走回头路,我们还要判断一个格子能不能走,必须满足( ) A. 它是墙壁 B. 它在地图边界之外 C. 它在地图边界之内,且不是墙壁,且没被访问过 D. 只要没访问过就行,哪怕在地图外面 单选题 C++ 1 BFS,边界判断,障碍物 BFS测验 2026-05-19 00:03 ✏️ 🗑️
750 16. 正确的做法是:当一个新格子被( )时,我们就要立刻把它标记为"已访问过"(比如 `vis[x][y] = 1`)。 A. 打印出来 B. 加入队列 C. 离开队列 D. 变成墙壁 单选题 C++ 1 BFS,visited,入队即标记 BFS测验 2026-05-19 00:03 ✏️ 🗑️