⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fig10_66.cpp

📁 经典书籍源代码啊。。。第三版。。。数据结构与算法分析——C++描述(第3版).
💻 CPP
字号:
/**
 * Recursive function to find best move for computer.
 * Returns the evaluation and sets bestMove, which
 * ranges from 1 to 9 and indicates the best square to occupy.
 * Possible evaluations satisfy COMP_LOSS < DRAW < COMP_WIN.
 * Complementary function findHumanMove is Figure 10.67.
 */
int TicTacToe::findCompMove( int & bestMove )
{
    int i, responseValue;
    int dc;   // dc means don't care; its value is unused
    int value;

    if( fullBoard( ) )
        value = DRAW;
    else
    if( immediateCompWin( bestMove ) )
        return COMP_WIN;    // bestMove will be set by immediateCompWin
    else
    {
        value = COMP_LOSS; bestMove = 1;
        for( i = 1; i <= 9; i++ )  // Try each square
        {
            if( isEmpty( i ) )
            {
                place( i, COMP );
                responseValue = findHumanMove( dc );
                unplace( i );  // Restore board

                if( responseValue > value )
                {
                      // Update best move
                    value = responseValue;
                    bestMove = i;
                }
            }
        }
    }
    return value;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -