Это код в Java, который представляет собой реализацию минимаксного алгоритма в теории игр, предоставляемого вундеркиндами для гиков.В этом коде я сомневаюсь, как логические значения функционируют в функции?почему мы пропускаем false, если это maximizer и true, если его minimizer?
// Простая java-программа для поиска максимального результата, который // может получить максимальный игрок.
static int minimax(int depth, int nodeIndex, boolean isMax,
int scores[], int h)
if (depth == h)
return scores[nodeIndex];
// If current move is maximizer, find the maximum attainable
// value
if (isMax)
return Math.max(minimax(depth+1, nodeIndex*2, false, scores, h),
minimax(depth+1, nodeIndex*2 + 1, false, scores, h));
// Else (If current move is Minimizer), find the minimum
// attainable value
else
return Math.min(minimax(depth+1, nodeIndex*2, true, scores, h),
minimax(depth+1, nodeIndex*2 + 1, true, scores, h));