backtrack.cpp
来自「8皇后」· C++ 代码 · 共 32 行
CPP
32 行
#include "BackTrack.h"
using namespace std;
BackTrack::BackTrack(const Application& app)
{
this->app=app;
}
bool BackTrack::tryToSolve(Position pos)
{
bool success=false;
// Application::Iterator itr=app.begin();
Application::Iterator itr(pos);
while(!success&&!(itr.atEnd()))
{
/* if (itr.atEnd())
return false;*/
pos=itr++;
if(app.valid(pos))
{
app.record(pos);
if(app.done())
success = true;
else
{
success = tryToSolve(pos);
if (!success) app.undo(pos);
}
}
}
return success;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?