我的讲师在他的 n-Queens 问题的课程笔记中提供了一些伪代码。不幸的是,我很难理解它在 Java 中的实现。有问题的伪代码是:
Queens (currentBoard , currentRow, n) :
if currentRow == n:
if currentBoard is legal:
return <currentBoard, 1>
else:
return <currentBoard, 0>
else:
for k = 1..n:
newBoard = currentBoard + <currentRow+1, k>
board [k], success[k] = Queens(newBoard, currentRow+1, n)
kmax = index of max(success[k])
return <board[kmax], success[kmax]>
我理解其中的大部分内容,但我不确定我要对尖括号中的伪代码部分做什么。