我正在用 C++ 编写搜索算法,我需要做的一件事是使用一些 if 语句来检查单元格的上方、下方、左侧和右侧。
每次发现一个单元格打开并添加到堆栈时,我希望将它添加到已检查的单元格列表中。
我希望能够在 if 语句中说 if(thisCell is not in checkedCells)
。
有什么简单的想法吗?
最佳答案
为此,最好使用 std::set
容器,因为它使您能够比列表更快地搜索项目。然后你可以这样写:
std::set<itemType> myset;
...
if (myset.find(item) != myset.end()) {
// item is found
}
可以通过谷歌搜索找到更大的示例。例如,here .
关于c++ - 检查项目是否在列表中的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2672593/