【发布时间】:2026-01-31 04:05:01
【问题描述】:
我正在为一个简单的编程问题编写解决方案,但我无法让 map::find() 工作。我在使用 BFS 时使用地图来标记访问的顶点。我知道我可以使用其他一些数据结构,例如 2D bool 数组,但我真的很想让它与地图一起使用。 这是我的代码:http://pastebin.com/mANej4vp
问题是visited[tempR] 始终为真,即使尚未访问tempR 位置。而且visited.size() 为1,但它同时响应visited[now] 和visited[tempR] 为真;而 tempR 不等于现在。
Duom.in 文件应包含以下内容:http://pastebin.com/L7qMG0bd
你知道为什么会这样吗?
【问题讨论】:
-
请将问题简化为SSCCE 并直接在您的问题中发布。我不想浏览数百行 pastebin 代码来调试您的程序。
-
我还没有完成代码..但请记住,在地图上使用
operator[]不等同于find。operator[]将在找不到该值时将其插入到地图中。
标签: c++ stl maps find breadth-first-search